我正在看一段 C 代码,它是
void printerror(char *message)
{
printf ("There was an error: '%s'\n", message);
switch (errno) {
... do stuff depending on errno
}
}
我认为这可能是一个问题,因为 printf 可能会在进入函数和到达switch
. 但是,printf 的手册页没有说明它设置 errno,所以我可以假设它永远不会设置它吗?标准中是否有任何内容可以保证哪些函数将使用和不会使用 errno?