0
我正在尝试将数字写入二进制文件,然后再读取它们。尝试从二进制文件读取数字(fread,fwrite)
但是,当我输入更多然后13个数字节目stucks,并不显示我的结果。
这里是我的代码:
#include<stdio.h>
#include<stdlib.h>
int main()
{
FILE *fp;
int a[100],
b[100],
i,n;
fp=fopen("temp.dat", "w+b");
printf("Enter N: \n");
scanf("%d",&n);
for(i=0;i<n;i++){
printf("Enter (%d) number \n",i+1);
scanf("%d",&a[i]);
}
fwrite(a, sizeof(a), n , fp);
rewind(fp);
fread(b, sizeof(b), n , fp);
printf("Results \n");
for (i = 0; i < n; i++)
printf("%d \n", b[i]);
fclose(fp);
system("pause");
return 0;
}
您为10个值分配空间并希望能够输入13个以上的空间? – 2013-02-21 20:49:58
好吧,我将它改为100,但是当我输入13时,它显示我无意义 – 2013-02-21 20:57:07