GNUスタイル
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/04/16 23:47 UTC 版)
BSD/オールマンやホワイトスミス・スタイルと同様、GNUスタイルでも中括弧だけで行を構成する。中括弧は空白2個ぶん字下げされ、その中の文はさらに空白2個ぶん字下げされる。ただし関数定義では字下げしない。 リチャード・ストールマンが広めたスタイルであり、LISPのコードを書いた経験がベースにあると考えられる。Lispではブロックに相当するもの(progn)はファーストクラスのデータ要素であり、新たな字下げレベルを与えることで強調できるが、Cではブロックは単なる構文である。このスタイルは1960~1970年代にあるALGOLやXPLの書籍にも見られる{。字下げとは直接関係ないが、GNUスタイルでは関数呼び出しの括弧の前にも空白を置く。 static char *concat (char *s1, char *s2){ while (x == y) { something (); somethingelse (); } finalthing ();} 利点はBSD/オールマンやホワイトスミスと同様で、かつホワイトスミスの欠点とされた「中括弧が目立たない」という問題にも対処している。 GNU EmacsエディタやGNUのindentコマンドでは、デフォルトでこのスタイルでの字下げを行う。GNU関係者はほぼ全てこのスタイルを使っているが、GNU以外でも一部で使われている。 GNU Emacs を使わない場合や、類似のカスタマイズ可能なエディタを使えない場合、エディタによる自動字下げではこのスタイルはなかなか対応できない。
※この「GNUスタイル」の解説は、「字下げスタイル」の解説の一部です。
「GNUスタイル」を含む「字下げスタイル」の記事については、「字下げスタイル」の概要を参照ください。
- GNUスタイルのページへのリンク