用C语言编写的CGI如何输出图像文件?
我用C语言写的CGI程序,如下:#include<stdio.h>intmain(){intc;FILE*p;printf("Content-Type:image/gif...
我用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输出二进制数据到浏览器。
看编程栏目的很多问题都得到了回答,就我这个问题无人问津,天,这个问题很难吗?
郁闷啊! 展开
#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输出二进制数据到浏览器。
看编程栏目的很多问题都得到了回答,就我这个问题无人问津,天,这个问题很难吗?
郁闷啊! 展开
4个回答
展开全部
要制定输出的是图形,需要输出http数据的头部指示的。而不是默认的plant/text这样的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有没有人解决了啊?急啊,我也遇到这个问题了···
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询