我想取代temp.replace
(QString("/"), QString("\"));
Run Code Online (Sandbox Code Playgroud)
这里我得到错误错误C2001:常量
错误中的换行符C2275:'QString':非法使用此类型作为表达式
如何用"\"替换"/"
thakns 4你的回答.但直到现在我还没有解决我的问题.请检查我的代码
//转换为wchar_t*
size_t origsize = strlen(toChar) + 1;
const size_t newsize = 100;
size_t convertedChars = 0;
wchar_t wcstring[newsize];
mbstowcs_s(&convertedChars, wcstring, origsize, toChar, _TRUNCATE);
wcscat_s(wcstring, L"\\*.*\0");
wcout << wcstring << endl; // C:\Documents and Settings\softnotions\Desktop\Release\*.*
SHFILEOPSTRUCT sf;
memset(&sf,0,sizeof(sf));
sf.hwnd = 0;
sf.wFunc = FO_COPY;
//sf.pFrom =wcstring; /* when giving wcstring i am not getting answer */
sf.pFrom = L"C:\\Documents and Settings\\softnotions\\Desktop\\Release\\*.*\0";
wcout << sf.pFrom <<endl; // C:\Documents and Settings\softnotions\Desktop\Release\*.*
Run Code Online (Sandbox Code Playgroud)
在分配sf.pFrom = wcstring时,wcstring和sf.pFrom都是相同的y not gettng答案;
Eli*_*sky 10
通过另一个逃避它\:
"\\"
Run Code Online (Sandbox Code Playgroud)
这是关于字符串中转义如何工作的一般C/C++问题.因为\用于转义并因此在字符串中具有特殊含义,所以它应该自行转义.
编译器抛出的错误是它看到第二个字符串常量一直持续到行尾,因为\"它阻止它结束字符串.