问问题描述
答精选答案

二进制文件转换为文本文件是没有任何实际意义的.二进制文件和文本文件最根本的区别就是二进制文件在读写的时候系统不对文件进行任何处理而交由程序员处理, 而文本文件打开是先由操作系统把文件中而在的
r
转换为
. 因为我们在C语言中写程序换行只有
, 但是在Windows操作系统中, 换行是
r
, 是两字字节. 如果不作任何处理, fgetc() == '
' 遇到这类语句将会出现一些小错误, 导致文件读写失败. 所以在读的时候, 系统自动把文件中的
r
变成
, 写的时候把内存中的
全部转换成
r
. 至于为什么C语言用
而Windows用
r
, 这是因为C语言是最早出现在Linux系统中的, 而Linux用的换行只有
, 所以为了使代码可移植性较高, 在Windows中编写C程序仍然使用
, 程序员就不需要去在意这些细节问题了.
本文来自作者[品牌助手]投稿,不代表公众科技网立场,如若转载,请注明出处:https://www.cpst.net.cn/k12jiaoyu/202609/1784086.html
评论列表(4条)
我是公众科技网的签约作者“品牌助手”!
希望本篇文章《如何用C语言把二进制文件转换成文本文件》能对你有所帮助!
本站[公众科技网]内容主要涵盖:教育咨询,知识百科
本文概览:二进制文件转换为文本文件是没有任何实际意义的.二进制文件和文本文件最根本的区别就是二进制文件在读写的时候系统不对文件进行任何处理而交由程序员处理, 而文本文件打开是先由操作系统把文件中而在的r转换为. 因为我们在C语言中写程序换行只有, 但是在Windows操作系统中, 换行是r, 是两字字节. 如果不作任何处理, fgetc() == '' 遇到这类语句将会出现一些小错误, 导致文件读写失败. 所以在读的时候, 系统自动把文件中的r变成, 写的时候把内存中的全部转换成r. 至于为什么C语言用而Windo