转义字符串中的反斜杠?
Escaping backslashes in a string?
我是一个相当新的 C/C++ 程序员,我一直遇到转义问题。我不知道我的字符串是否被转义。很难解释...
例如:
wchar_t* getpathAppDataLocal = 0;
SHGetKnownFolderPath(FOLDERID_LocalAppData, 0, NULL, &getpathAppDataLocal);
wstringstream apdlcl(getpathAppDataLocal);
std::cout << apdlcl.str();
这个输出给我:"C:\Users\whatever\AppData\Local\"
这是否意味着反斜杠已经被转义了?或者我是否必须以某种方式逃避它们,以便我可以使用 apdlcl.str()
来表示 boost::filesystem::whatever
?
你的反斜杠绝对是字面上的反斜杠。反斜杠仅用于在字符串文字中创建转义序列(即,您在代码中明确写出的字符串,例如 const char *s= "Hello World!\n"
)。
我是一个相当新的 C/C++ 程序员,我一直遇到转义问题。我不知道我的字符串是否被转义。很难解释...
例如:
wchar_t* getpathAppDataLocal = 0;
SHGetKnownFolderPath(FOLDERID_LocalAppData, 0, NULL, &getpathAppDataLocal);
wstringstream apdlcl(getpathAppDataLocal);
std::cout << apdlcl.str();
这个输出给我:"C:\Users\whatever\AppData\Local\"
这是否意味着反斜杠已经被转义了?或者我是否必须以某种方式逃避它们,以便我可以使用 apdlcl.str()
来表示 boost::filesystem::whatever
?
你的反斜杠绝对是字面上的反斜杠。反斜杠仅用于在字符串文字中创建转义序列(即,您在代码中明确写出的字符串,例如 const char *s= "Hello World!\n"
)。