Будьте готовы к какому-то запутанному ответу.
\
- это escape-символ (вы, возможно, уже встречали escape-последовательность \n
, например), а \\
- escape-последовательность, представляющая один \
символ (в некотором смысле быть понятым как побег от побега персонажа). Если вы действительно хотите, чтобы в вашей строке было \\
, вам придется использовать \\\\
:
std::cout << "\\\\something\\" << std::endl; /* prints "\\something\" */
Просто, чтобы привести другой пример, предположим, что вы хотели бы иметь "
в строке. Написание:
const char *str = "Hello "World"";
, очевидно, не скомпилируется, и вам придется бежать с "
с \
:
const char *str = "Hello \"World\"";