Пространства имён
Варианты
Действия

Escape-последовательности

Материал из cppreference.com
 
 
Язык С++
Общие темы
Таблица ASCII
Escape-последовательности
История C++
Управление программой
Операторы условного выполнения
Операторы повторения
Операторы перехода
Функции
объявление функции
объявление лямбда-функции
шаблон функции
спецификатор inline
спецификаторы исключений (устарело)
спецификатор noexcept (C++11)
Исключения
Пространства имён
объявление пространства имён
псевдонимы пространства имён
Типы
спецификатор decltype (C++11)
Спецификаторы
cv-спецификаторы
спецификаторы продолжительности хранения
спецификатор constexpr (C++11)
спецификатор auto (C++11)
спецификатор alignas (C++11)
Инициализация
Литералы
Выражения
Утилиты
Типы
typedef-объявление
объявление псевдонима типа (C++11)
атрибуты (C++11)
Приведения типов
неявные преобразования
const_cast-преобразование
static_cast-преобразование
dynamic_cast-преобразование
reinterpret_cast-преобразование
C-подобное и функциональное приведение типов
Выделение памяти
Классы
Особые свойства классовых функций
Специальные функции-члены
Шаблоны
шаблон класса
шаблон функции
специализация шаблона
упакованные параметры (C++11)
Разное
Ассемблерные вставки
 

Escape-последовательности используются для описания определённых специальных символов внутри строковых литералов.

Доступны следующие escape-последовательности:

Escape-
последовательность
Описание Представление
\' одинарная кавычка байт 0x27
\" двойная кавычка байт 0x22
\? знак вопроса байт 0x3f
\\ обратный слеш байт 0x5c
\0 нулевой символ байт 0x00
\a звуковой сигнал байт 0x07
\b забой байт 0x08
\f перевод страницы байт 0x0c
\n перевод строки байт 0x0a
\r возврат каретки байт 0x0d
\t горизонтальная табуляция байт 0x09
\v вертикальная табуляция байт 0x0b
\nnn произвольное восьмеричное значение байт nnn
\xnn произвольное шестнадцатеричное значение байт nn
\unnnn произвольное Юникод-значение.
Результатом могут быть несколько символов.
кодовая позиция U+nnnn
\Unnnnnnnn произвольное Юникод-значение.
Результатом могут быть несколько символов.
кодовая позиция U+nnnnnnnn

[править] Примечания

Символ перевода строки \n имеет специальное значение, когда используется в текстовом вводе/вывод; он конвертируется в соответствующий ОС байт или последовательность байтов.

Символ \0 является восьмеричной escape-последовательностью, состоящей из единственной цифры 0, поэтому непосредственно за ним не должны следовать цифры с 0 по 7, иначе он будет интерпретироваться как начало более длинной восьмеричной escape-последовательности.

[править] Пример

#include <cstdio>
 
int main()
{
    printf("Hello world\n");
    printf("\' \"\nT\nE\nX\nT\n\nBye,\f world");
}

Вывод:

Hello world
' "
T
E
X
T
 
Bye,
     world