printf输出时,一般会将字符送至缓冲区,直到碰到
1) ‘\n’才会结束
2) 超过缓冲区大小[1024]时
这两种情况。例如:
int main()
{
printf("------------");//此时运行程序,不会正常打印
while(1);
return 0;
}
int main()
{
int i=0;
while(i<1024){
printf("-");//当i<1024时,程序仍然不会输出
i++;
}
while(1);
return 0;
}
printf 底层调用
也是通过write实现,所以可以使用write 写到文件描述符1标准输出(STDOUT_FILENO)上来实现printf。