akios @ ウィキ

3.10.6. 文字・文字列リテラル用のエスケープシーケンス

最終更新:

akios

- view
管理者のみ編集可

3. 字句構造

3.1. Unicode

3.2. 字句変換

3.3. Unicodeエスケープ

3.4. 行終端子

3.5. 入力要素とトークン

3.6. 空白

3.7. コメント

3.8. 識別子

3.9. キーワード

3.10. リテラル

3.10.1. 整数リテラル

3.10.2. 浮動小数点リテラル

3.10.3. ブールリテラル

3.10.4. 文字リテラル

3.10.5. 文字列リテラル

3.10.6. 文字・文字列リテラル用のエスケープシーケンス

文字・文字列用のエスケープシーケンス(escape sequence)文字リテラル文字列リテラルの中で1重引用符や2重引用符、バックスラッシュ文字といくかの非図形文字を表すことを可能にします。

EscapeSequence:
  \ b  /* \u0008: backspace BS */
  \ t  /* \u0009: horizontal tab HT */
  \ n  /* \u000a: linefeed LF */
  \ f  /* \u000c: form feed FF */
  \ r  /* \u000d: carriage return CR */
  \ "  /* \u0022: double quote " */
  \ '  /* \u0027: single quote ' */
  \ \     /* \u005c: backslash \ */
  OctalEscape  /* \u0000 to \u00ff: from octal value */

OctalEscape:
  \ OctalDigit
  \ OctalDigit OctalDigit
  \ ZeroToThree OctalDigit OctalDigit

OctalDigit: one of
  0 1 2 3 4 5 6 7

ZeroToThree: one of
  0 1 2 3

エスケープのバックスラッシュの後の文字がASCCIIbtnfr"'\01234567以外の場合はコンパイル時にエラーとなります。Unicodeエスケープ\uは前段階で処理されます(3.3.)。

8進エスケープはCとの互換性のため提供されていますが、Unicode値の\u0000\u00ffしか表せないので、通常はUnicodeエスケープを利用してください。

3.10.7. ヌルリテラル

3.11. 分離子

3.12. 演算子

目安箱バナー