質問内容
https://qiita.com/yasuo-ozu/items/a7f09898067fbb973c43
上記のサイトは、初心者が仕様を理解しているかを試すサイトらしく、そのページの最後のコードについてすこし気になったところがあります。
初心者がコードを理解しているかを試すサンプルコードとして無限ループを記載するかどうかを考え、あまりしないのではと思い、本来はどのような知識を試すコードだったのかが気になるので、想像でいいので教えてください。
そのサイトの下部にはmain関数のみ記載されていたのでそこだけ記載します。
コードの解釈
このコードでは、ループ内でポインタの値と、ポインタの指す値が変化しないため無限ループになる。
printf関数の第一引数は、*aがAを指していて、その文字コードに6を足し、Gが出力される。
該当のソースコード
C言語
1int main(void) { 2 char a[] = "ABCDabcd", *c = a; 3 while (*a) printf("%c\n", *a - 'A' + 'G'); 4}
で、なにをききたいんでしょうか
記事のコメント欄に投稿して作者自身に確認する、というのがいちばん妥当かと思います。
コードを書いた人が無限ループ以外の出力を期待していたとしたら、どのようなコードになっていたかが気になります。
>> maisumakun
quitaにコメント欄があることを把握していませんでした。その方が合理的でした。
というか元記事にコメントしてきました。
>> yumetodo
アカウントをまだ取っていない上に、間違いであるか確信が持てずどうコメントしていいのか分からなかったので、ありがとうございます。
割と気楽にコメント投げていいと思います。それでキレてきたらブロックすればいいだけですし。
> quitaにコメント欄があることを把握していませんでした。
コメント欄が存在しないブログ記事は、誰のチェックも受けてない内容だということなので、まゆつばで見る必要があります。(qiitaだと編集リクエストもありますが、放置されてるかもしれないので)
まあ、コメント欄があって、そこに何も書いてないからと言って、正しいとは限らないですが。
回答2件
あなたの回答
tips
プレビュー