gpt4 book ai didi

c - fprintf 和 NULL 终止符

转载 作者:行者123 更新时间:2023-12-03 23:56:13 27 4
gpt4 key购买 nike

我正在使用 fprintf 将字符串附加到文档中,这是我有疑问的行:

fprintf(win, bff[i - 2] != '\n' && bff[i - 2] != '\r' ? "\nmultiscreen=1" : "multiscreen=1");

代码有效,它将 multiscreen=1 附加到文件中的下一个可用行。

但如果我理解正确,它不会在 multiscreen=1 的末尾添加一个 NULL 字符吗?这是否重要,因为我将它写入文件并且字符串中尾随的 NULL 是 C 的东西?

或者使用 fputs 而不是 fprintf 会更正确吗?

最佳答案

字符串文字自动将 0 作为最后一个字符。所以你不需要自己添加一个。

NUL 终止符仅用于 fprintf(或您正在使用的任何字符串函数)知道何时停止从指针写入字符;没有 NUL 实际上被写入文件。

是的,我建议使用 fputs 而不是 fprintf 因为您没有使用 fprintf 的任何格式化工具,除非您在问题的评论中使用了 pmg 的建议,该建议确实使用了格式化序列。

关于c - fprintf 和 NULL 终止符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12623859/

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