【发布时间】:2016-03-08 01:47:58
【问题描述】:
我还是 C 的新手,但是下面的程序编译得很好,(使用 gcc),它甚至在使用文本文件时也可以工作,但是当我使用其他文件格式时,即png,我什么也得不到。控制台吐出?PNG,仅此而已。我不希望图像打印为图像,显然程序没有这样做,但我希望打印 png 文件中的数据。为什么程序不能正常运行?是因为 fread 拒绝文本以外的任何文件吗?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
FILE *fp;
int main() {
char buffer[1000];
fp=fopen("FILE IN QUESTION HERE", "rb");
if(fp==NULL) {
perror("An error occured while opening the file...");
exit(1);
}
fread(buffer, 1000, 1, fp);
printf("%s\n", buffer);
fclose(fp);
return 0;
}
【问题讨论】:
-
你应该读一本 C 书。
fread不解释读取的数据。 -
你的
fread()真的不好用吗?你用调试器检查了吗? -
我完全打算在某个时候阅读一本 C 书籍,我知道我的问题很愚蠢,但我太兴奋了,无法开始使用 C 进行编码。:)
-
旁注:请在 META 网站上结帐this discussion...