Gan*_*Gan 2 c copying filehandle
我正在设计一个图像解码器,作为第一步,我试图复制使用cie打开文件,并将其内容写入新文件.下面是我使用的代码.
while((c=getc(fp))!=EOF)
fprintf(fp1,"%c",c);
Run Code Online (Sandbox Code Playgroud)
其中fp是源文件,fp1是目标文件.程序执行时没有任何错误,但图像文件(".bmp")未正确复制.我观察到复制文件的大小较小,只有20%的图像可见,其他都是黑色.当我尝试使用简单的文本文件时,副本已完成.
你知道问题是什么吗?
确保变量的类型c是int,没有 char.换句话说,发布更多代码.
这是因为EOF常量的值通常为-1,如果您将字符读作char-sized值,则每个字节都0xff将显示为EOF常量.随着额外的位int; 有两个分开的空间.
| 归档时间: |
|
| 查看次数: |
10853 次 |
| 最近记录: |