プログラミング演習II

「文字型データ」

文字型データ

文字型(char型)は「文字」を表現するためにC言語に用意された基本データ型の一つである。整数型(int型)と同様に、ある一定の範囲の整数値を表現するための型であり、通常は8ビット(1バイト)で表現できる範囲の整数値を扱える。

整数値を格納するのであれば、int型を使えばよいはずであるが、int型とは別にchar型を用意する理由は、メモリの消費を抑えるためである。演習で使用している Windows PCでは、通常int型は4バイト(32ビット)のサイズであるが、1文字(1バイトで十分)を表現するために4バイト使うのでは無駄が多い。そこでこの無駄を省くために、C言語では1バイトの整数値を扱うデータ型「文字型(char型)」を用意している。

char c;
c = 'A';

上の例では、char型の変数cを宣言し、'A'(文字A)を値として設定している。ここで、'A'文字定数である。
文字定数は文字型の定数で、「'」(シングルクォート)で文字を囲むことで表現する。

以下のように、文字型のデータは整数型と同様に演算を行うこともできる。

char c = 'a';        /* 文字型変数 c を宣言し、値を 'a' に設定 */

c += 10;             /* 値を10増やす */
c ^= 0x10;           /* 変数 c の値と 0x10(=16進数の10)を XOR */
                     /* int型と同じように演算ができる */

printf("c=%c\n", c); /* printf()での書式指定子には %c を使う */