前回の記事は、数字の1と小文字のlが紛らわしいことを紹介しました。他にも読み間違いやすい文字を紹介します。
間違えやすい文字
MISRA C 最新版(2023)の Directive 4.5 で以下の文字は読み間違えやすいため、識別子に使う場合に注意するよう促しています。
- 同じ字の英字大文字と英字小文字
- アンダースコア(’_’)の有無
- 英字大文字の ‘O’ と数字の ‘0’
- 英字大文字の ‘I’ と数字の ‘1’
- 英字大文字の ‘I’ と小文字の数字の ‘l’(小文字のエル)
- 英字小文字の ‘l’ と数字の ‘1’ ※前回の記事で紹介しました。
- 英字大文字の ‘S’ と数字の ‘5’
- 英字大文字の ‘Z’ と数字の ‘2’
- 英字小文字の ‘n’ と英字小文字の ‘h’
- 英字大文字の ‘B’ と数字の ‘8’
- 英字小文字の ‘rn’(’r’ の後ろに ‘n’)と英字小文字の ‘m’
特に識別子名が長くなると、読み間違いやすくなるでしょう。また、フォントによっては、もっと見分けがつきにくいかもしれません。
以下に2つの例を紹介します。
int data_x;
int data_X;
int data_Z;
int data_2;
わたしの場合
趣味で書いているプログラムでは、気が付く範囲で対応しています。特に競技プログラミングでは、速く書くために1文字の変数名を使うことが多いですが、その変数名で大文字と小文字違いは使わないようにしています。
最後に
読み間違やすい文字を組で紹介しました。
C言語を使いこなしていきましょう!