C 语言程序问题, 这个读取二进制文件并转存内容到txt文件的C程序看不懂,求指导,小弟才学C 2个月

[复制链接]
查看11 | 回复3 | 2013-5-15 06:55:36 | 显示全部楼层 |阅读模式
才两个月竟就学到这里了,可喜可贺! while (1) {
//进入读文件循环
c=fgetc(fi); //依次从文件中读取一个字符,并赋给整型变量c,注意,由于在内存中整型变量所占空间较字符变量要大,所以c中有效的部分是其低字节部分,至于为什么读的是整数而不是字节,那是因为而读入的字符就存在累加器ax中的低字节部分,c语言约定的返回就是ax。
if (EOF==c) break;
//EOF ==c 是判断是否到了文件尾。fgtc()函数在读到文件尾,就会产生一个读错误,并返回一个EOF值。,
fprintf(fo,"%d DB %02X\n",n,(unsigned...
回复

使用道具 举报

千问 | 2013-5-15 06:55:36 | 显示全部楼层
其实你是这两个函数没弄明白:1.int fgetc(FILE *stream);//fgetc()函数返回来自stream(流)中的下一个字符,如果到达文件尾或者发生错误时返回EOF. 2.int fprintf( FILE *stream, const char *format, ... );//fprintf()函数根据指定的form...
回复

使用道具 举报

千问 | 2013-5-15 06:55:36 | 显示全部楼层
while (1) {
c=fgetc(fi); //从文件里读取一个字符赋给c
if (EOF==c) break;
//判断读到的是不是文件结束符EOF,如果是的话,就跳出循环
fprintf(fo,"%d DB %02X\n",n,(unsigned char)c); //向另一个文件写入一句话,这句话的开始是n...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行