変数名を数字で始めることができない理由
C で変数名を割り当てる場合、命名規則により最初の文字として数字を使用することが禁止されています。この制限は、変数名と数値を区別する必要があることから生じています。
変数名を数値で始めることができる場合、数値定数の構文規則と矛盾が生じます。たとえば、次のコードは無効です:
int 17 = 497; // Error: Invalid variable name
ここで、コンパイラは「17」を変数名ではなく数値定数として解釈し、コンパイル エラーを引き起こします。
同様に、変数名の最初の文字として数字を許可すると、コード内で変数識別子と数字を区別することが困難になります。式:
int 42 = 6 * 9; // Error: Ambiguous expression
この例では、コンパイラは、「42」が変数名なのかリテラル値なのかを判断するのに苦労します。
さらに、変数名が数字で始まる可能性がある場合は、数字の文字列も有効な識別子になるため、名前の競合やコードの可読性の問題が発生する可能性があります:
String 1111 = "Totally text"; // Error: Invalid variable name
Toコード内のこのような混乱や曖昧さを避けるために、C では変数名が数字で始まることを制限し、変数識別子が数値や式と簡単に区別できるようにしています。
以上がC の変数名を数字で始めてはいけないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。