我想輸入文件的名稱,然後顯示文件的內容(包含數字行)。我使用的代碼是:如何從文件中打印內容
#include <stdio.h>
#include <stdlib.h>
void main(int argc,char *argv[])
{
FILE *file;
file = fopen(argv[1],"r");
char line[100];
while(!feof(file)){
fgets(line,100,file);
puts(line);
}
fclose(file);
}
當我嘗試在代碼塊中運行程序時,它只是崩潰了程序。我嘗試在Xcode中運行,並收到消息Segmentation fault:11,然後程序退出。有人可以幫忙嗎?
好了,所以我試圖做一種方式,但仍然沒有成功:
#include <stdio.h>
#include <stdbool.h>
#include <string.h>
int main(int argc,char *argv[])
{
FILE *file;
char line[100];
file = fopen(argv[1],"r");
do {
char c = fgetc(file);
if (c == EOF) break;
memset(line,0,100);
while ((c != '\n') && (c != EOF)) {
c = fgetc(file);
}
printf("%s",line);
} while (true);
fclose(file);
}
打印'argc'以確保您獲得所有您希望獲得的參數。 – 2014-10-19 05:12:49
['while(!feof(file))'是**總是錯!**](http://stackoverflow.com/questions/5431941/while-feof-file-is-always-wrong) – 2014-10-19 05:19:27