麻烦大家帮看一下c,这段代码的目的是读取bin文件里的十六进制数并存到数组里,读取前1,105,920个数都正常,但是在这之后就全都输出CC了,想请问一下这是为啥,是不是数据溢出了,该怎么改呢
#pragma warning(disable:4996);
#include <stdio.h>
#define SIZE 608
int main(void)
{
//一、读取数据
FILE* fp;
fp = fopen("C:\\Users\\LEGION\\Desktop\\test.bin", "r");//以只读形式打开D盘的test.bin文件,文件地址储存在指针fp中
if (fp == NULL)
{
printf("failed.\n");
return 1;
}
unsigned char image[3][SIZE][SIZE];//unsigned char型占一个字节
fread(image, 1, SIZE * SIZE * 3, fp);//第一维是列数,第二维是行数
////将fp指针指向的文件写入image数组中,文件中元素的个数为SIZE*SIZE*3,每个元素占1个字节
fclose(fp);
printf("%X\n", image[2][602][575]);
return 1;
}