gpt4 book ai didi

c - ungetc() 是否不写入文件,而只是移动文件位置?

转载 作者:太空宇宙 更新时间:2023-11-04 07:03:02 25 4
gpt4 key购买 nike

在标准C库中,ungetc()不写入文件吗?

它只移动文件位置吗?

可以不事先阅读就使用吗?即它可以独立于其他 IO 函数使用吗?

是否可以在不需要一次一个字符的读取功能之后使用它,即一次读取多个字符?

谢谢。

最佳答案

ungetc 是一个读取函数。它不做任何写作。该文件甚至可能无法打开进行写入。

你之前做了什么并不重要。 ungetc 函数只影响 future 的读取。

如果下一次读取是 block 读取,那么它将首先读取由 ungetc 推送的字符。

如果您 ungetc 一些字符,然后读取这些字符,文件位置指示器将返回到它原来的位置。

虽然还有你还没有读过的推后字符,那么:

  • 对于文本流,文件位置指示器未指定
  • 对于二进制流,文件位置指示符为每个后推字符减去1;如果它试图从 0 返回,则变得不确定

如果您还有其他问题,可以通过the C Standardungetc的描述来解答。 :

关于c - ungetc() 是否不写入文件,而只是移动文件位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35786395/

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