int main(int argc, char* argv[])
{
int i,s;
s=0;
char*p;
for(i=1; i<argc;i++)
{
for (p=argv[i];*p;p++);
s+=(p-argv[i]);
}
printf("%d\n",s);
return 0;
}
このコードが何をするのか理解するのに苦労しています。
私が見る限り、プログラムの名前は無視され、コマンドラインで出力された他のすべての文字列についてはp
、現在の文字列に設定されます。
- 条件
*p
は、「p
そうでない限りNULL
、つまり、文字列の終わりに到達するまで移動しますか? 」と言います。 - 各反復で、現在の、単語の残りの部分の
s
減算を、の名前で合計します。この減算の結果は何ですか?これは2つのASCII値の減算ですか?p
argv[i]
- このプログラムは基本的に何をしますか?