C言語の識別子の文字数制限はあまり意識する必要がない

注意: この記事は1年以上前に掲載されたものです。情報が古い場合がありますのでお気を付け下さい。

C言語においては、ANSI-Cの仕様で関数や変数などの識別子として使用できる文字数は少なくとも31文字 ((標準化される前のK&Rでは8文字)) である。しかしながら、現在においてはあまり意識する必要はない。

これは31文字を超えた場合、識別されない場合があるという意味であり、モダンなコンパイラーでは31文字を超えたからといって問題を起こすことはほぼありえないからである。

というのも、近年のコンパイラーでは少なくとも100〜200文字、多くの場合は500文字は問題なく識別されるように作られていること、そうであればそこまで長い識別子を定義すること自体が通常ありえないからである。

今日ではIDEなどで入力補完も強化されているのが多く、関数名などを定義するときに無意味に短くしてわかりにくくするよりも、多少長くなってもわかりやすいことを重視する方が望ましい。

その場合でも、だいたいはよほど長くても50文字前後におさまり、コンパイラーの識別子の制限に絡むことはほとんどないだろう。

したがって、モダンなコーディングであれば識別子の文字数は常識的な範囲であれば気にする必要はないなろう。

タイトルとURLをコピーしました