1. int fprintf( FILE *stream, const char *format, [ argument ]...)
将格式化的字符串输出到指定的文件流中。
stream:文件流指针,指定输出的目标,例如:
stdout:标准输出(通常是终端)。
stderr:标准错误输出(通常是终端,但独立于标准输出)
其他文件流(通过fopen打开的文件)
format:格式化字符串,指定输出的格式。
...:可变参数。
2.stderr是标准错误输出流,通常用于输出错误信息。
与 stdout 不同,stderr 是无缓冲的,即使程序崩溃或重定向标准输出,错误信息也会立即显示。
在代码中一般是先将错误写到errno中,然后再使用fprintf打印标准错误,errno是一个枚举变量,不同的数值表示不同的错误。

strerror(errno),根据不同的errno,返回不同的字符串(错误类型)
3.代码示例:
#include <stdio.h>
#include <string.h>
#include <errno.h>
int main() {
// 模拟一个错误
errno = ECONNREFUSED;
fprintf(stderr, "Connect Error:%s\n", strerror(errno));
return 0;
}

4.printf和fprintf类似,只是printf会将信息输出到标准输出上。
浙公网安备 33010602011771号