如果我以文本模式而非二进制模式打开文件,是否有区别?因为我读到UNIX和Linux不区分文本和二进制文件。
fopen
进行一些额外的hack。fopen
,以区分二进制模式和文本模式。(我同意我并不经常这样做)。这不会有害。模式字符串还可以包括字母“b”,作为最后一个字符,或作为任何两个字符字符串中的字符之间的字符。这仅是为了与C89兼容,没有任何影响;在包括Linux在内的所有符合POSIX的系统上都会忽略“b”。(其他系统可能会对文本文件和二进制文件进行不同的处理,如果您进行对二进制文件的I/O并期望您的程序可能被移植到非UNIX环境中,则添加“b”可能是个好主意)
\r\n
转换为\n
....! - Basile Starynkevitch
\n\r
或者仅使用\r
作为换行符。 - wildplasser