这种类型的数组如何存入读出
就是字符串数组啊
如果3个name在一行,那么用sscanf拆分到数组就行了,写入就用fprintf
FILE *fp = fopen("test.txt","r");
char buf[400];
while(fgets(buf,400,fp))
{
sscanf(buf,"%s\t%s\t%s",name[0],name[1],name[2]);
}
//如果每个名字一样,那么
int n = 0;
while(fgets(buf,400,fp))
{
strcpy(name[n++],buf);
if(n==3)
break;
}
写入直接fprintf(fp,"%s\t%s\t%s\n",name[0],name[1],name[2]);
或者for(int i=0;i<3;i++)
fprintf(fp,"%s\n",name[i]);
你把那些属性都翻番到结构体就可以,然后定义一个大的结构体数组,进行输入输出
#include <bits/stdc++.h>
using namespace std;
struct spf{
char b[100];
char name[3];
char sex[3];
char num[100];
char zybj[3];
};
int main()
{
spf a[3];
int i;
for(i=0;i<3;i++){
cin>>a[i].name;
}
for(i=0;i<3;i++){
cout<<a[i].name<<endl;
}
return 0;
}
比如只输入输出name