ホームページ > バックエンド開発 > C++ > C/C ポインター宣言: `char* p` と `char *p` – どちらのスタイルが最適ですか?

C/C ポインター宣言: `char* p` と `char *p` – どちらのスタイルが最適ですか?

Susan Sarandon
リリース: 2024-12-05 18:47:09
オリジナル
863 人が閲覧しました

C/C   Pointer Declaration: `char* p` vs. `char *p` – Which Style is Best?

C/C でのポインター変数の宣言 : スタイルを理解する

C/C でのポインター変数の宣言は、次の 2 つの表記法についての議論を引き起こしました。

(a) char* p;
(b) char *p;

どちらのスタイルも有効ですが、選択には異なるプログラミングの観点と重点が反映されています。

スタイル (a): 式の強調

このスタイルはポインタ変数を扱います(例: p) を単一の実体として扱います。アスタリスク (*) は名前宣言の一部です。構文の観点から見ると、アスタリスクは名前 p にバインドされ、変数の型 (たとえば、char へのポインター) を示します。このアプローチは、式を強調し、宣言を必要な形式として考慮する従来の C の観点と一致しています。

スタイル (b): 型の強調

対照的に、スタイル(b) タイプをより重視します。アスタリスク (*) は型仕様の一部 (例えば、char へのポインター) であると見なされます。このスタイルは、型とオブジェクト指向の原則に重点を置く C プログラミング パラダイムにより一致しています。

Bjarne Stroustrup の視点

Bjarne Stroustrup、 C の作成者であり、後者のスタイル (int p;) を支持しています。変数 (int*) の型の指定が明確になります。彼は、このアプローチが C の高度な機能とよりよく連携していることを強調しています。

コンテキストに関する考慮事項

複数のポインター変数を 1 行で宣言する場合は、変数にアスタリスクを使用します。名前 (スタイル (a)) は混乱を招く可能性があります。例:

char c, d;

この場合、c と d の両方が文字へのポインターであることはあまり明確ではないかもしれません。 。型指定 (スタイル (b)) でアスタリスクを使用すると、このあいまいさが解決されます。

char c, d;

結論

スタイル (a) とスタイル (b) のどちらを選択するかは、最終的には個人的な好みとプログラミング哲学の問題です。スタイル (a) は C のバックグラウンドを持つ人にとってはより直観的かもしれませんが、スタイル (b) は C の型中心のアプローチにより沿っています。

以上がC/C ポインター宣言: `char* p` と `char *p` – どちらのスタイルが最適ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート