文字型【character type】
文字型とは?

C言語では文字型はchar型として定義されており、メモリ上の最小単位に一文字分の値を格納する。古い言語仕様や処理系では、英数字や記号を扱うASCIIコードを基準として、1バイト固定長で設計されている場合が多かった。
現代では日本語を含む世界中の文字を統合的に扱うUnicodeが主流となり、文字型が扱うデータサイズも多様化している。一文字を2バイトや4バイトの固定長で管理する設計や、文字の種類に応じて1~4バイトの可変長として扱う設計などがある。
文字型の実態は言語仕様によって異なり、C言語やC++言語では整数型の一種として定義され、文字コードに対応する数値そのものが格納される。文字データに加算や減算などの算術演算を行うことも可能で、数字やアルファベットを順になぞる操作などに用いられることがある。一方、Pascalのchar型のように文字を純粋な文字としてのみ扱い、数値演算を直接行えないように区別する言語も存在する。
文字列の表現方法も言語によって異なる。文字型を基本データ型として備える言語では、文字型を連続して並べた配列やポインタによって文字列を表現することが多く、独立した文字列型が用意されていない場合がある。逆に、String型などの文字列型を基本データ型として備える言語では、長さ1(1文字)の文字列型で文字単体を扱うことができ、文字型をあえて設けていないことが多い。
データベース管理システム(DBMS)では、「CHAR」という型名が文字型ではなく固定長の文字列型を指すことが多い。SQL文では「CHAR(10)」のように記述され、10文字分の領域が確保される。指定した文字数に満たない値を格納した場合は、空白などで余白が埋められる。これとは別に、文字数に応じて領域が変動する「VARCHAR型」も用意されており、用途に応じて使い分けられている。