1。
#include<stdio.h>
main()
{
FILE *fp;
int i,k=0,n=0;
fp=fopen("d1.dat","w");
for(i=1;i<4;i++)
fprintf(fp,"%d",i);
fclose(fp);
fp=fopen("d1.dat","r");
fscanf(fp,"%d%d",&k,&n);
printf("%d %d\n",k,n); /* 输出 123 0,怎么回事啊?*/
fclose(fp);
getch();
}
2。
#include<stdio.h>
main()
{
FILE *fp;
int i,a[4]={1,2,3,4},b;
fp=fopen("data.dat","wb");
for(i=0;i<4;i++)
fwrite(&a[i],sizeof(int),1,fp);
fclose(fp);
fp=fopen("data.dat","rb");
fseek(fp,-2L*sizeof(int),SEEK_END); /* 指针从尾部向前移动2个元素,怎么输出3呢?*/
fread(&b,sizeof(int),1,fp);
fclose(fp);
printf("%d\n",b);
getch();
}
两道关于文件的令人费解的题目!高手帮忙!