根据我的理解,您需要为语言中的任何“标准构造”打开和关闭大括号(例如,for循环/ if语句等等,我不知道真正的单词),它包含多个语句。那么,为什么这个K& R C有效...
while((len = getline(line, MAXLINE)) > 0)
if(len > max) {
max = len;
copy(longest, line);
}
while循环上没有大括号,但是它确实包含多个语句(当if为true时)。这是K& R的C编程语言第2版中的例1.9。
答案 0 :(得分:4)
因为if
被读作while
的单个语句正文。这完全有效。
答案 1 :(得分:4)
在你的情况下,你的while循环中只有一个语句是if
条件。在这种情况下,此代码是正确的。