#include<stdio.h>
int main()
{
write(stdout,"hahhh",6);
return 0;
}
./a.out运行,结果没有任何反应。。。
#include<stdio.h>
int main()
{
write(1,"hahhh",6);
return 0;
}
结果就在屏幕上输出hahhh了,为什么会这样?
stdout 在 stdio.h 声明为如下的格式:
extern struct _IO_FILE *stdout; /* Standard output stream. */
不是定义为1 的。。
它是一个 FILE 类型的指针。
按照下面使用可以输出:
#include<stdio.h>
int main()
{
fwrite((void *)"hahhh",1, 6,stdout);
return 0;
}