写入以文本模式打开但在二进制模式下没有发生的文件时会发生什么转换?特别是在 MS Visual C 中.
What translation occurs when writing to a file that was opened in text mode that does not occur in binary mode? Specifically in MS Visual C.
unsigned char buffer[256];
for (int i = 0; i < 256; i++) buffer[i]=i;
int size = 1;
int count = 256;
二进制模式:
FILE *fp_binary = fopen(filename, "wb");
fwrite(buffer, size, count, fp_binary);
与文本模式:
FILE *fp_text = fopen(filename, "wt");
fwrite(buffer, size, count, fp_text);
我相信大多数平台在处理流时都会忽略t"选项或text-mode"选项.然而,在 Windows 上,情况并非如此.如果您查看以下 fopen() 函数的说明:MSDN,你会看到指定"t"选项会有如下效果:
I believe that most platforms will ignore the "t" option or the "text-mode" option when dealing with streams. On windows, however, this is not the case. If you take a look at the description of the fopen() function at: MSDN, you will see that specifying the "t" option will have the following effect:
这篇关于以二进制和文本模式编写的文件的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
将 RGB 转换为 HSV 并将 HSV 转换为 RGB 的算法,范围Algorithm to convert RGB to HSV and HSV to RGB in range 0-255 for both(将 RGB 转换为 HSV 并将 HSV 转换为 RGB 的算法,范围为 0-255)
如何将枚举类型变量转换为字符串?How to convert an enum type variable to a string?(如何将枚举类型变量转换为字符串?)
什么时候使用内联函数,什么时候不使用?When to use inline function and when not to use it?(什么时候使用内联函数,什么时候不使用?)
C 或 C++ 中好的 goto 示例Examples of good gotos in C or C++(C 或 C++ 中好的 goto 示例)
ios_base::sync_with_stdio(false) 的意义;cin.tie(NULL);Significance of ios_base::sync_with_stdio(false); cin.tie(NULL);(ios_base::sync_with_stdio(false) 的意义;cin.tie(NULL);)
TCHAR 仍然相关吗?Is TCHAR still relevant?(TCHAR 仍然相关吗?)