关于 fopen 中的二进制模式
About binary modes in fopen
我已经阅读了关于 fopen 访问模式的 C++ Reference,但我不明白 "a+b"
和 "ab+"
之间的区别,或者 "w+b"
和 "wb+"
.
b
和 +
的顺序无关紧要。没有区别。所以 a+b
和 ab+
意思是一样的。
两种形式是等价的。
来自C标准C11 7.21.5.2:
w+bx or wb+x create binary file for update
a+b or ab+ append; open or create binary file for update, writing at end-of-file
至于b
本身,它意味着该文件被用作纯二进制文件,而不是文本文件。
模式标志的顺序不相关。所以 ab+
和 a+b
是等价的。
b
标志以二进制模式打开文件,禁用DOS和Windows中对某些字符的特殊处理,但对macOS和POSIX系统没有影响。
我已经阅读了关于 fopen 访问模式的 C++ Reference,但我不明白 "a+b"
和 "ab+"
之间的区别,或者 "w+b"
和 "wb+"
.
b
和 +
的顺序无关紧要。没有区别。所以 a+b
和 ab+
意思是一样的。
两种形式是等价的。
来自C标准C11 7.21.5.2:
w+bx or wb+x create binary file for update
a+b or ab+ append; open or create binary file for update, writing at end-of-file
至于b
本身,它意味着该文件被用作纯二进制文件,而不是文本文件。
模式标志的顺序不相关。所以 ab+
和 a+b
是等价的。
b
标志以二进制模式打开文件,禁用DOS和Windows中对某些字符的特殊处理,但对macOS和POSIX系统没有影响。