• ベストアンサー

基本的なことかもしれませんが、

ヘッダーファイルとみると、 変数の初めが「_」で始まるものを多く見かけます。 アンダーバーではじまる変数名について、 なにか特殊な意味があるのでしょうか? (「_」ではじまる変数をつくれることは知っていますが) cは初心者なので、解説よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • liar_adan
  • ベストアンサー率48% (730/1515)
回答No.1

アンダーバーで始まる識別子(変数名など)は、 「予約済み」となっています。(JIS X 3010 §7.1.3) これはどういうことかというと、 「処理系の方で、アンダーバーをつけた識別子を使うかもしれないから、 ユーザーは使わないでね」 ということです。 処理系が内部で使う識別子はアンダーバーをつけて、 ユーザーが使う識別子と混じらないようになっています。 現実には、アンダーバーをつけた識別子を使っても プログラムは動くと思いますが、 識別子名がかちあう危険性があるので使わない方がいいわけです。

mcurry
質問者

お礼

理解しやすい説明ありがとうございました。 予約済みなんですね。 なるほど、tutorialを読んでると説明なしに アンダーバーつきの変数など出てきているので 前から疑問に思っていました。 納得できました。 ありがとうございました

関連するQ&A

専門家に質問してみよう