「C言語/記法」の版間の差分

削除された内容 追加された内容
Ef3 (トーク | 投稿記録)
→‎文: BNFを併記
タグ: 2017年版ソースエディター
Ef3 (トーク | 投稿記録)
→‎注釈: cleanup
タグ: 2017年版ソースエディター
382 行
 
=== 注釈 ===
文字定数、文字列リテラル、'''コメントの中を除き'''、/* は注釈( ''Comments''; コメント)の開始を表します<ref>『JISX3010:2003』p.48「6.4.9 注釈」</ref>。
注釈(コメント)の記述は次のようになっている。
このようなコメントの内容は、マルチバイト文字を特定するためと、コメントを終了させる文字 */ を見つけるためにのみ検査されます。
:<syntaxhighlight lang=c>
/* . . . */ コメントはネストできません。
//注釈の例1
/*注釈の例2*/
</syntaxhighlight>
注釈とはプログラマの覚え書きとしての単なるメモで、プログラムの処理とは一切関係はない。
他人の書いたコードや自分が昔書いたコードを注釈なしに理解することは困難であるため、適度な注釈はコードの理解を高めます。
 
文字定数、文字列リテラル、コメントの中を除き、// は次の改行文字までのすべてのマルチバイト文字を含むコメントを表します。
C言語では2種類の注釈表記方法があり、「//」から行の終わりまで、または「/*」と「*/」とで囲まれた文章が注釈である<ref>『JISX3010:2003』p.48「6.4.9 注釈」</ref>。
 
; コメントの例
: <syntaxhighlight lang=c>
/* 注釈の例21 */
// 注釈の例12
</syntaxhighlight>
 
なお、C99以前はそれまでも「/*」と「*/」だけが正式な注釈、「//」始まる一行コメントはコンパイラによって独自拡張として実装されていたが、現在は公C99で正の仕様である<ref>『C言語の最新事情を知る: C99の仕様 - Build Insider』http://www.buildinsider.net/language/clang/01</ref>に標準規格化されました
 
== 文 ==