
图片左边,显示 if语句中。
if(openmax == 0)
{
errno = 0;
if((openmax = sysconf(_SC_OPEN_MAX)) < 0)
{
if(errno == 0)
openmax = OPEN_MAX_GUESS;
else
err_sys("sysconf error for _SC_OPEN_MAX");
}
}
1.为什么 在sysconf失败之后,errno值怎么没有更改还可能存在 errno = 0 这种情况出现,
2为什么不写成?
if(openmax == 0)
{
if((openmax = sysconf(_SC_OPEN_MAX)) < 0)
{
err_sys("sysconf error for _SC_OPEN_MAX");
}
else
openmax = OPEN_MAX_GUESS;
}