FILE *fp;
short *originalUnPacked;
short *unPacked;
int fileSize;
fp = fopen(FILENAME, "r");
fseek (fp , 0 , SEEK_END);
fileSize = ftell (fp);
rewind (fp);
originalUnPacked = (short*) malloc (sizeof(char)*fileSize);
unPacked = (short*) malloc (sizeof(char)*fileSize);
printf ( "The UnPacked : %d ", unPacked);
printf ( "The Original UnPacked : %d ", originalUnPacked);
//上面的打印语句打印两个不同的值,我的问题是为什么?
最佳答案
我认为你不应该将short*传递给printf。它需要一个简单的短路,对吗?
如果你打印一个短*,你不会得到大小,你会得到该内存所在的地址。
关于c - 相同的文件,相同的文件大小,但两种不同的内存大小,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7890115/