我试图编写一个给定文本文件数组的函数,它在同一行上打印共享相同索引的所有行,例如:
文件1:
嘿
有
文件2:
1
2
输出:
嘿1
有2
我似乎找不到一种像有人在数组上那样遍历所有文件的方法。这就是我被困在的地方:
void paste(FILE** files,int argc){
int maxLines = getMaxLines(files,argc);
int line = 1;
//char buf[256];
char ch;
for (int i=0; i<maxLines; i++){
for (int j=1; j<argc; j++){
while ((ch=fgetc(files[j])) != '\n'){
putchar(ch);
}
}
printf("\n");
line++;
}
//printf("%d",maxLines);
}
很显然,它没有达到预期的目的,但是我认为我的主要思想是这段代码。如何使用行索引遍历行?我如何以这种方式访问每一行?
答案 0 :(得分:0)
创建一个从文件中打印行的函数-基本上是while
循环(不需要行索引,因为文件中的位置是持久的,这意味着每次您为某个文件调用该函数,将打印下一行。)
现在遍历文件,一次又一次地打印一行,直到其中一个到达eof。