出现warning: assignment makes pointer from integer without a cast

lxw1017 2011-05-31 01:13:22
int main()
{int fb[4];
fb[0]=fopen("1.bmp","rb");
fb[1]=fopen("2.bmp","rb");
fb[2]=fopen("3.bmp","rb");
fb[3]=fopen("4.bmp","rb");
fb[4]=fopen("5.bmp","rb");
BMPshow(fb[0]);
}

通过BMPshow ()传递上面不同的指针数组,就会出现上面的警告,如何消除??
...全文
232 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
justkk 2011-06-01
  • 打赏
  • 举报
回复
BMPshow(fileno(fb[0]));
沭水河畔 2011-06-01
  • 打赏
  • 举报
回复
fopen是C库函数,返回文件指针FILE*型。
open是系统调用,返回文件描述符为int型。
BMPshow()的参数是什么要求?
lxw1017 2011-06-01
  • 打赏
  • 举报
回复
定义FILE *fp[4]后,fb[0]传递给BMPshow(fb[0])会出现段错误,是不是不能这么传递
gdb调试会出现#2 0x08049092 in BMPshow (p1=0x0) at 222.c:396
justkk 2011-05-31
  • 打赏
  • 举报
回复
FILE *fb[4];
yong_f 2011-05-31
  • 打赏
  • 举报
回复
是你定义的BMPshow()是参数是一个指针类型。
要么修改BMPshow(int fd);
要么在调用的时候给一个地址BMPshow(&(fb[0])或BMPshow(fb+i)

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧