gpt4 book ai didi

c - 打开()一个文件并在最后写入

转载 作者:行者123 更新时间:2023-12-01 09:16:30 25 4
gpt4 key购买 nike

我目前正在开发一个带有一些 pipe() 和重定向的 C shell 程序。

我使用 dup2() stdoutstderr (1 & 2) 重定向。

当我用 int fd = open("test.txt", O_RDWR | O_CREAT, S_IRUSR | S_IWUSR); 打开一个文件时,循环打印 "----- ----\n" 将所有内容分开,有时出现,有时不出现,有时删除之前写入的内容。

有人有解释吗?

我希望每个新文本都到达文件中之前写入内容的末尾。

最佳答案

这就是 O_APPEND 标志的用途。当一个文件可以随时从另一个进程获得更新时,您需要O_APPEND 来确保您的write 始终在最后。

关于c - 打开()一个文件并在最后写入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33962850/

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