900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > c语言读取文件到结构体数组 有关文件读写到结构体数组问题;

c语言读取文件到结构体数组 有关文件读写到结构体数组问题;

时间:2022-07-23 10:06:54

相关推荐

c语言读取文件到结构体数组 有关文件读写到结构体数组问题;

该楼层疑似违规已被系统折叠隐藏此楼查看此楼

typedef struct IMG

{

char *name;

int weight;

int height;

}IMG;

这是我的结构体存的是 图片的名字 宽度 高度

void readWeightHeight(void)

{

FILE *fpbmp;

//FILE *fpm;

char filename[54];

char *bmpname =NULL;

long Handle;

int i = 0;

struct _finddata_t FileInfo;

if ((Handle = _findfirst("D:\\240\\*.bmp", &FileInfo)) == -1L)

printf("Cannot open file\n");

else

{

//printf("%s\n", FileInfo.name); 目录下的文件

do

{

sprintf(filename, "D:\\240\\%s", FileInfo.name);

fpbmp = fopen(filename, "r");

img[i].name = (char *)malloc(strlen(FileInfo.name)+1);//这里我不给结构体里面的指针分配内存 数据得不到内存(这样做是为了节省内存)

strcpy(img[i].name, FileInfo.name);

fseek(fpbmp, 18L, 0);

fread(&img[i].weight, 4, 1, fpbmp); //fread(&wight, 4, 1, fpbmp);

fseek(fpbmp, 22L, 0);

fread(&img[i].height, 4, 1, fpbmp); //fread(&hight, 4, 1, fpbmp);

//printf("name %s w:%d h:%d \n", img[i].name, img[i].weight, img[i].height);

i++;

} while (_findnext(Handle, &FileInfo) == 0);

_findclose(Handle);

}

}

到后面的读文件就会出问题了。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。