c语言文件读写问题!
程序代码:#include <stdio.h>
struct list
{
int i;
int a[100];
}a[2],b[2],*p,*q;
int main(void)
{
FILE*l;
int i;
p=a;
l=fopen("z:\\c\\d","wb+");
for(i=0;i<2;i++,p++)
{
printf("请输入数据");
scanf("%d %s",&p->i,&p->a);
}
p=a;
for(i=0;i<2;i++,p++)
{
fprintf(l,"%d%s",p->i,p->a);
}
rewind(l);
getchar();
q=b;
for(i=0;i<2;i++,q++)
{
fscanf(l,"%d%s",&q->i,q->a);
}
q=b;
for(i=0;i<2;i++,q++)
{
printf("%d\t%s \n",q->i,q->a);
}
fclose(l);
getchar();
return 0;
}
rewind(l);getchar();
q=b;
为什么这里加了一个getchar();
就可以输出了啊,如果不加的话就会直接闪掉输出。还有就是写入文件的字符是正确的,但是输出地时候却是
即使在%s后面加上\n结果也一样啊!!!!!!!!!!!!!!!







