【发布时间】:2019-05-27 20:11:10
【问题描述】:
当对文件使用fgetc、fputc、fgets 和fputs 时,我是否需要确保在文本模式而不是二进制模式下opened 文件?
当使用fread 和fwrite 时,我是否需要以二进制模式而不是文本模式opened 文件?
在 Linux 中,我想没有区别。但是如果在我目前无法访问的 Windows 中呢?
【问题讨论】:
-
简答:“textmode”是微软创建的工件。
-
@wildplasser MACs(bitd)没有将行尾编码为
'\r'吗? “文本模式”不是 MS 垄断的。即使在今天,使用“文本模式”,人们可能会看到一个字节顺序标记。 -
警告,经过一些尝试,我编辑了我的答案,在 WIndows 下,文本模式也关注
fputc/fgetc/../_read/_write,所以所有的 r/w 功能,而不仅仅是 fread 和 fwrite,甚至微软的文档也忘记谈论 fgetc / fputc 等