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

时间:2016-05-21 10:10:57

标签: c operating-system out-of-memory system-calls standard-library

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

1 个答案:

答案 0 :(得分:2)

putchar是一个库函数。它调用write系统调用在stdout中写入字符。

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

只有库函数才能实现。

库函数用于写入,它分配一个缓冲区,如果缓冲区被填满或刷新,则只调用write系统调用来写入stdout中的内容。

因此,如果您想要良好的系统性能,则必须使用库函数(putchar)。

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