C/C++

エスケープシーケンス

更新日:

目次

エスケープシーケンスとは

printf()関数は、第一引数の文字列をコマンド画面に出力する関数です。

「"(ダブルクォーテーション)」で囲まれた文字は文字列と認識されます。

では「""」内に改行や「"」を書くとどうなるでしょうか。

C言語で改行は基本的に無視されます。そのため「""」内であっても意味を持ちません。
また、コンパイラは「"」を一つ見つけるとそこを基準に左から右、上から下に対となる「"」を探します。そして最初に見つけた「"」をペアだと認識します。
そのため「""」内に「"」を書くと「"」以降の文字は文字列と認識されず、多くの場合コンパイルエラーになります。

このような現象を回避するためにエスケープシーケンスという特殊な文字が用意されています。
エスケープシーケンスは「""」内に書くと特別な文字に置き換わります。

エスケープシーケンス一覧

以下がエスケープシーケンス一覧です。

動作環境によって「\(バックスラッシュ)」が「¥(円マーク)」になる場合があります。

エスケープシーケンス 意味
\a 警報音
\b バックスペース(前を一文字を消す)
\f 改ページ
\n 改行
\r 復帰(その行の先頭に戻る)
\t 水平タブ(テキストエディタでTabキーを押した時の動作)
\v 垂直タブ(\n + \t)(環境によっては認識されずに文字化けする)
\\ \(バックスラッシュ)もしくは¥(円マーク)
\? ?(クエスチョンマーク)
\' '(シングルクォーテーション)
\" "(ダブルクォーテーション)
\0 NULL文字
\o00 8進数表記の定数
\x00 16進数表記の定数



-C/C++

Copyright© C言語/C++入門講座  ツナサーモン , 2019 All Rights Reserved Powered by AFFINGER5.