鼻头塌是为什么:用C语言编写的CGI如何输出图像文件?

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 02:32:59
我用C语言写的CGI程序,如下:
#include <stdio.h>
int main()
{
int c;
FILE *p;
printf("Content-Type:image/gif\n\n");
p=fopen("1.gif","r+b");
c=getc(p);
while(!feof(p))
{
putc(c,stdout);
c=getc(p);
}
fclose(p);
return 0;
}
发现这个程序并不能正确得到1.gif图形文件。

查找原因,我估计是stdout打开的类型仅仅是"w",而不是"w+b",而1.gif是二进制文件,所以不能直接向stdout输出二进制数据。
那怎么样才能使用CGI输出图形呢?
问题补充:也就是如何用C语言写的CGI输出二进制数据到浏览器。
看编程栏目的很多问题都得到了回答,就我这个问题无人问津,天,这个问题很难吗?
郁闷啊!

要制定输出的是图形,需要输出http数据的头部指示的。而不是默认的plant/text这样的

很好啊!

有没有人解决了啊?急啊,我也遇到这个问题了···

不错啊