白肌の雑記帳

雑に記録していきたい

ポインタ宣言記法について

へえ、と思ったことをメモ。


C言語ポインタ完全制覇」P37補足。

int *hoge_p;

ではなく、

int* hoge_p;

って書く人いるよね?(俺です)
この方が理解しやすい、って人は多いだろう(俺です)。
それ、よくないよ。って話が記述されている。

どうも、

int* hoge_p, piyo_p;

と書いた時に複数のポインタ型変数を一行で宣言できない。
というのがダメな理由らしい。気にしたことなかったわこれ…

じゃー2行書けばいいじゃん!と言いたくなったけど。
でもポインタ型変数を何個も宣言するのにその分行を書くのも現実的ではないか…

上述のこと以外に明確な推奨理由は見つからなかったけど、ちょっと今まで気にしてなさすぎたのでメモ。

なお、この補足は「どのようにすればCの奇っ怪な宣言を自然に読めるか?」に焦点が当たっており、結論として無理と述べられている。
それでいいのか!いや、いいんだ!Cだから!

C言語ポインタ完全制覇 (標準プログラマーズライブラリ)

C言語ポインタ完全制覇 (標準プログラマーズライブラリ)