这是我的代码:
#include <stdio.h>
// count lines in input
main() {
int c, nl;
nl = 0;
while ((c = getchar()) != EOF) {
if (c == '\n')
++nl;
}
printf("%d\n", nl);
}
每当我构建并运行此程序时,它会打开一个控制台窗口,当我按下enter
时,它不会给我换行符。
答案 0 :(得分:3)
要获得输出,您需要按 Ctrl + Z (对于DOS / Windows)或 Ctrl + D (对于UNIX)传递EOF
。
旁注:根据C标准定义的main
签名是
int main(void)
int main(int argc, char *argv[])
答案 1 :(得分:-1)
在代码块中满足某些条件时,需要执行所有需要执行的代码,如:
if (c == '\n') {
++nl;
printf("%d\n", nl);
}
将c定义为char而不是整数。