static void retrieveData(const char* filename)
{
FILE *f;
char s[256];
int a[10];
int b[10];
char c[10][10];
...
.....
long j[10];
sprintf(s, "some code %s", filename);
if ((f = popen(s, "r")) != NULL) {
while (fgets(s, sizeof(s), f)) {
if (strncmp(s, "A........ {
sscanf (s,"........
a[0] = var1;
b[0] = var2;
c[0] = var3;
...
.....
}
else if (strncmp(s, "B........ {
sscanf (s,".........
a[1] = var4;
b[1] = var5;
c[1] = var6;
...
.....
}
else if .........more codes
}
pclose(f);
}
}
我想获取数组 a,b,c....,j 中的所有数据。
void getData(int argc, char **argv)
{
int n;
int a[10];
int b[10];
char c[10][10];
...
.....
long j[10];
retrieveData("filename1");
for (n = 0; n < 10; ++n) {
printf("%d\n", a[n]);
}
for (n = 0; n < 10; ++n) {
printf("%d\n", b[n]);
}
...... more codes
retrieveData("filename2");
for (n = 0; n < 10; ++n) {
printf("%d\n", a[n]);
}
for (n = 0; n < 10; ++n) {
printf("%d\n", b[n]);
}
...... more codes
}
filename1 和 filename2 包含相同的数据结构但不同的值。请有人告诉我如何......我正在linux c下编译。对不起我糟糕的英语。