一个非常简单的 c 程序,它从文件中读取并在终端上输出。这里的结果和行有什么区别?例如,如果我在 while 循环内打印 (result) 或 (line),则两者的输出是相同的。
printf("%s", line);
printf("%s", result);
但是如果我替换,则在 while 循环的条件内
while(result !=NULL)
和
while(line != NULL)
它不会停止。源代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char *argv[])
{
const int LINE_SIZE = 1000;
FILE *infile;
char *result;
char line[LINE_SIZE];
infile = fopen("in.txt", "r");
result = fgets(line, LINE_SIZE, infile);
while(result != NULL)
{
//printf("%s", line);
printf("%s", result);
result = fgets(line, LINE_SIZE, infile);
}
return 0;
}