fopen w wb mode

本文详细解析了C语言中fopen函数的使用方法,特别是关于模式参数(如w、wb、r、rb等)与文件换行符的处理机制。解释了在不同模式下,如何正确地处理文本和二进制文件的读写操作,以及在写入文本文件时如何避免换行符转换导致的问题。

函数fopen是一个标准c函数,其功能是打开一个文件,之后便可以进行读或写的操作.其原型是这样的: 
FILE *fopen( const char *filename, const char *mode );

第一个参数是要打开文件的名字(路径),第二个参数是打开文件所用的模式.

对于模式参数的w和wb,r和rb,w是以文本的形式进行写入,而wb是以二进制模式进行写入.

对于换行符数据0x0A,如果这么写:fp = fopen(str,"wb");可以得到正常数据0x0A,而fp = fopen(str,"w");遇到0x0A时,就会在其前面多一个0x0D.

如果有参数b,是以二进制方式打开,这种方式不会进行”回车符”和”换行符”的转换.而如果没有b,即单以w为参数的话,系
统就把换行符0A转换为0D0A,因为windows是以0D0A为换行符的.


总结:打开模式中含有b,则要写入的或要读取的数据不会进行相应的转换,否则进行转换。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值