gpt4 book ai didi

c - fprintf C中 '\n'的作用是什么?

转载 作者:太空宇宙 更新时间:2023-11-04 01:06:16 26 4
gpt4 key购买 nike

我对 fprintf 中 '\n' 的作用感到困惑。我知道它将字符复制到一个数组中,并且\n 字符表示何时停止读取当前缓冲区中的字符。但是,它什么时候知道使系统调用写入。

例如,fprintf(stdout,"hello") 打印但我从未给出\n 字符,所以它怎么知道进行系统调用。

最佳答案

系统调用在同步/刷新 channel 时进行。这可能是当缓冲区已满时(尝试写一个没有 \n 的 LOT,你会在某个时候看到输出),当看到 \n 时(如果您为 channel 配置了线路缓冲,这是 tty 设备的默认设置),或者当调用 fflush() 时。

当路径关闭时,它也会被刷新。当进程终止时,操作系统将关闭它所有打开的路径。这些事件中的每一个都会导致系统调用发出输出。

关于c - fprintf C中 '\n'的作用是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22512539/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com