以下のコード(KernighanとRitchieによる「Cプログラミング言語」の問題1-17の場合)では、なぜ最長の行(下部)が印刷されないのですか?
#include <stdio.h>
#define MAXLINE 1000
#define LONGLINE 10
int getLineLength(char line[], int maxline){
int i, c;
for(i = 0; i< maxline-1 && (c = getchar() != EOF) && c != '\n'; i++)
line[i] = c;
if(c == '\n') {
line[i] = c;
i++;
}
line[i] = '\0';
return i;
}
main() {
int len;
char line[MAXLINE];
while((len = getLineLength(line, MAXLINE)) > 0)
if(len > LONGLINE)
printf("The line was over the maxlength\n\t %s", line);
return 0;
}