私はK&Rで自分自身にCを教えていますが、本の例の1つに困惑しています。例に書かれているとおりにコードをコンパイルしますが、作成者の言うとおりには実行されません。プログラムは文字を数えることになっています。与えられたコードは次のとおりです。
#include <stdio.h>
/* count characters in input; 1st version */
main()
{
long nc;
nc=0;
while (getchar() != EOF)
++nc;
printf("%ld\n", nc);
}
コンパイルするには、main()をint main()に置き換えます。しかし、私はそれが質問に関連していないと思います。プログラムはコンパイルされ、正常に実行されます。しかし、それは単にそれがするように書かれたように文字を数えません。私は何かが足りないのですか?本が書かれてから、現代のコンパイラがこのようなコード例を扱う方法に何か変更があったでしょうか?この掲示板の善良な人々が提供できるかもしれないどんな援助も大いに感謝されるでしょう。
最高、ダン