关于结构体的一点儿疑问
程序代码:
#include "stdafx.h" #include "stdio.h" void main() { struct aa { char biaoji[20]; char num[20]; char xulie[50]; }st; FILE *fp; FILE *fp2; fp=fopen("ba11.txt","r"); fp2=fopen("zhuanba11.txt","w"); if (fp==NULL) { printf("文件无法打开!\n"); } while (!feof(fp)) { fscanf(fp,"%s%s%s",&st.biaoji,&st.num,&st.xulie); fprintf(fp2,">%s %s\n%s\n",st.biaoji,st.num,st.xulie); } }这是帮生科院的同学写的一个很简单的转换文件格式的小算法,我现在有个问题搞不清:1.为什么fscanf()语句中,&st.biaoji前面的&加与不加结果一样?2.可不可以将结构体变量st定义成一个数组?比如说st[1000],然后while(!feof(fp))中定义一个int i=0; i++,然后st[i].biaoji,感觉定义成一个结构体变量数组更好理解。
ba11.rar
(519 Bytes)