私は最近 C プログラミング言語を購入し、テキストをゆっくりと読んで、すべてを理解していることを確認しています。この配列の例 (第 1.6 章) に出くわしましたが、スタック オーバーフローで既に多くの質問に回答されているおかげで完全に理解できました。
問題は、プログラムを実行しても何も出力されないことです。この本は時々頭が悪いと感じさせる癖があるので、これが初心者の質問である場合は事前にお詫び申し上げます. 私はかなり長い間答えを探していたことを保証します。
これはテキストのコードです。私はXCode 4を使用しています:
#include <stdio.h>
/* count digits, white space, others */
main()
{
int c, i, nwhite, nother;
int ndigit[10];
nwhite = nother = 0;
for (i = 0; i < 10; ++i)
ndigit[i] = 0;
while ((c = getchar()) != EOF)
if (c >= '0' && c <= '9')
++ndigit[c-'0'];
else if (c == ' ' || c == '\n' || c == '\t')
++nwhite;
else
++nother;
printf("digits =");
for (i = 0; i < 10; ++i)
printf(" %d", ndigit[i]);
printf(", white space = %d, other = %d\n", nwhite, nother);
}
なぜ実行されないのですか??