打印

熟悉IAR EWARM库函数的高手帮忙看看

[复制链接]
2882|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
arm_fan168|  楼主 | 2009-12-22 22:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
想在IAR EWARM环境下编一个小程序,读取电脑硬盘上的一个bmp图片文件,程序大概如下:
#include <stdio.h>

char BmpBuffer1[1024*80];

char LoadBmpFile(char * file_name)
{
   FILE *hfbmp;
   long bmp_file_length;
   int ret;
   if((hfbmp = fopen(file_name, "rb")) == NULL)
   {
     return NULL;
   }

   ret = fseek(hfbmp, 0L, SEEK_END);
   bmp_file_length = ftell(hfbmp);
   ret = fseek(hfbmp, 0L, SEEK_SET);
   fread(BmpBuffer1, sizeof(char), bmp_file_length, hfbmp);
   fclose(hfbmp);
   return 1;
}

void main(void)
{

.......
LoadBmpFile("d:\\test1.bmp");

......
}

问题是每次运行到bmp_file_length = ftell(hfbmp);的时候,返回值总是-1,接着执行fread函数的时候就不能返回了。我对stdio.h里的库函数用法不是太熟悉,估计是用法有问题,请熟悉的高手帮忙解答,谢谢。

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

223

帖子

0

粉丝