Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/157.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 接受字符串会导致代码注释_C++_C_Visual Studio_Wininet - Fatal编程技术网

C++ 接受字符串会导致代码注释

C++ 接受字符串会导致代码注释,c++,c,visual-studio,wininet,C++,C,Visual Studio,Wininet,我有一段来自 LPSZSAcceptTypes—指向以null结尾的字符串数组的指针,该字符串表示客户端接受的媒体类型。这里有一个例子 PCTSTR rgpszacceptypes[]={T“text/*”,NULL} 这里的问题是,“text/*”中的/*被intellisense解读为注释,这一行后面的代码被注释掉。这里的解决方案是什么?请考虑以下问题: PCTSTR rgpszAcceptTypes[] = {_T(“text/” “*”), NULL}; 预编译阶段将透明地连接字符串,

我有一段来自

LPSZSAcceptTypes—指向以null结尾的字符串数组的指针,该字符串表示客户端接受的媒体类型。这里有一个例子

PCTSTR rgpszacceptypes[]={T“text/*”,NULL}

这里的问题是,“text/*”中的/*被intellisense解读为注释,这一行后面的代码被注释掉。这里的解决方案是什么?

请考虑以下问题:

PCTSTR rgpszAcceptTypes[] = {_T(“text/” “*”), NULL};
预编译阶段将透明地连接字符串,并且不会混淆Intellisense

或者,您可以使用宏定义I appologize::

#define SPLIT_PATH "/"
PCTSTR rgpszAcceptTypes[] = {_T(“text” SPLIT_PATH “*”), NULL};

。。。或者按照@DoomProg在注释中的建议转义字符串。

IntelliSense将其解析为注释的唯一原因是它不是正确的字符串文字。C++字符串文字是由简单的、直接引号限定的,但是MSDN示例可能是因为在不适合技术内容的字处理器中编辑的,所以使用了程式化的引号“和”。它们不能被识别为引号,因此字符串文本也不能被识别,这将导致IntelliSense误入歧途。如果MS对可移植性有任何尊重的话,它也会使编译器误入歧途。

“text/\*”我想在这行的末尾添加一条注释?嘿,我的目的不是注释代码。目的是使Accept标头成为text/*您使用哪个版本的Visual Studio?如果我直接使用正确的引号,而不是您在此处复制的样式化引号,那么VS2013中的IntelliSense不会因为/*出现在字符串文字中而感到困惑。@KarthikNishanth Done。我还将把它作为一个错误报告给MSDN页面。但是首先导致问题的卷曲引号仍然会使它无法编译…哦!我认为卷曲引号是复制粘贴造成的,而不是代码的实际编写方式-\