我有如下所示的功能。在程序的其他地方,我已经将字符串复制到结构qa中的数组中。我知道这有效,就像在我的剧本中早些时候一样,我都打印过它们。我希望这个函数做的是每次运行时创建一个新文件,并将结构qa中存储的内容写入文件。
我用fwrite尝试了这个但是它起作用了。我能写这样的整个结构,还是需要分别复制每个数组。如果我必须单独做,我怎么能这样做,所以它写一个数组q的一行,后面跟着一个接一个的数组?
#define MAX 11
#define LONG 250
struct qa{
char q[MAX][LONG];
char a[MAX][LONG];
};
void copy(qa){
int j;
char fn[50];
FILE *l;
for(j = 0; j < MAX; j++){
fn[sizeof "file100.txt"];
sprintf(fn, "file%d.txt", j);
l = fopen(fn,"w");
}
if (f != NULL){
fwrite(&qa[j], sizeof(qa), 1, l);
}
else{
printf("File not blank");
}
fclose(l);
}