哪个更好,ch = '\n';写(1, &ch, 1);或 putchar('\n');?

Which is better, ch = '\n'; write(1, &ch, 1); or putchar('\n');?

我遇到了系统调用 "write" 然后,我尝试比较 "putchar" 和 "write"。现在,我对上面的代码行感到困惑。

putchar 是一个库函数。它调用写入系统调用将字符写入标准输出。

如果我们多次访问系统调用,系统性能会变慢。

所以只实现了库函数

写入的库函数,它分配一个缓冲区,一旦缓冲区已满或已刷新,则只调用write系统调用将内容写入stdout。

所以,如果你想要良好的系统性能,你必须使用库函数 (putchar)。

是否需要立即写入输出,可以使用write系统调用。