文字リテラル
文字リテラルは、ASCIIコードのひとつの文字をソースコード上で表現するものです。「'」でASCIIコードの一つの文字を囲みます。
// 文字リテラル 'a' 'b'
これはchar型で、ASCIIコードの値になります。ASCIIコードの文字として出力したい場合はprintf関数の「%c」を使います。
#include <stdio.h>
int main(void) {
char ch = 'a';
// ASCIIコード(数値)
printf("%d\n", ch);
// ASCIIコードに対応する文字
printf("%c\n", ch);
}
出力結果です。
97 a
文字リテラルのエスケープシーケンス
文字リテラルのエスケープシーケンスです。「\t」「\n」で、タブや改行を表現できます。
| \t | タブ |
|---|---|
| \n | 改行(LF) |
| \0 | ヌル文字 |
文字リテラルのエスケープシーケンスのサンプルです。
#include <stdio.h>
int main(void) {
// 文字リテラルのエスケープシーケンス
printf("%d %d %d\n", '\t', '\n', '\0');
}
出力結果です。
9 10 0
ASCIIコードの任意の文字
「\x16進数ASCIIコード」というエスケープシーケンスを使って、ASCIIコードの任意の文字を表現できます。以下はASCIIコードの「a」を16進数で表現しています。
\x61
文字リテラルのエスケープシーケンスでASCIIコードの任意の文字を使用するサンプルです。
#include <stdio.h>
int main(void) {
// 文字リテラルのエスケープシーケンス
printf("%c\n", '\x61');
}
出力結果です。aが出力されます。
a
エスケープシーケンスの一覧
| 記号 | 意味 |
|---|---|
| \a | ベル |
| \b | バックスペース |
| \f | ページ送り(クリア) |
| \n | 改行(ラインブレーク) |
| \r | 改ページ |
| \t | タブ |
| \v | 垂直タブ |
| \\ | \ |
| \? | ? |
| \' | シングルクォーテーション(') |
| \" | ダブルクォーテーション(") |
| \0 | ヌル文字 |
| \N | 8進定数 |
| \xN | 16進定数 |
C言語ゼミ


