【6日でできるC言語入門】エスケープシーケンスの入った文字列の表示

 C言語で文字列を画面に表示する際、改行やタブ、引用符やバックスラッシュといった特殊な記号を表現するためには「エスケープシーケンス」を利用します。エスケープシーケンスは、printf関数などで特殊な働きをもたせたいときに不可欠な仕組みです。この章では、エスケープシーケンスを使った日本語メッセージの表示例を交え、基本から応用までわかりやすく解説します。

1.エスケープシーケンスの使い方

1.1. サンプルプログラム

以下は、エスケープシーケンスを利用して様々な日本語メッセージを表示するサンプルプログラムです。

プロジェクト/ファイル名: Lesson10_1/main.c

#include <stdio.h>

int main(void) {
    printf("ようこそ!\nC言語の世界へ!\n");
    printf("『C言語』の学習を始めましょう。\n");
    printf("パスの例:\tC:\\Users\\ユーザー名\\Documents\n");
    printf("ダブルクオーテーション:\"\tシングルクオーテーション:\'\n");
    printf("バックスラッシュ:\\\n");
    return 0;
}

1.2. 実行結果

ようこそ!
C言語の世界へ!
『C言語』の学習を始めましょう。
パスの例:       C:\Users\ユーザー名\Documents
ダブルクオーテーション:"       シングルクオーテーション:'
バックスラッシュ:\

2.エスケープシーケンスの種類と意味

2.1. 主なエスケープシーケンス一覧

エスケープシーケンス表示される内容説明
\n改行次の行から表示
\tタブ水平の空白(字下げ)を挿入
\\バックスラッシュ()バックスラッシュ自体を表示
\"ダブルクオーテーション(")ダブルクオーテーションを表示
\'シングルクオーテーション(')シングルクオーテーションを表示

2.2. 使いどころの具体例

  • 改行や整形
    複数行をまとめて表示したいとき
    例:printf("行1\n行2\n");
  • パスやファイル名
    バックスラッシュやタブを使いたいとき
    例:printf("C:\\Program Files\\test\n");
  • 会話文や引用
    引用符を文字列に含めたいとき
    例:printf("彼は「こんにちは」と言いました。\n");

3.サンプルプログラム解説

3.1. 各行の説明

内容エスケープシーケンス
1「ようこそ!」と「C言語の世界へ!」を2行で表示\n(改行)
2「『C言語』の学習を始めましょう。」と表示なし
3パス例をタブ付きで表示:「C:\Users\ユーザー名\Documents」\t, \\(タブ・バックスラッシュ)
4ダブル・シングルクオーテーションを表示\", \'
5バックスラッシュのみを表示\\

まとめ

 エスケープシーケンスを使うことで、C言語のprintf関数から改行・タブ・引用符・バックスラッシュなどの特殊文字を自由自在に表示できます。日本語メッセージでもまったく同じように活用でき、わかりやすく美しい出力が可能です。
基本のエスケープシーケンスは必ず覚え、プログラムの見た目や可読性を高めていきましょう。