char[]转换为CString的问题
开发环境VS2005 unicode字符集
char ttttt[50]= "aaaaaaaaaaaa ";
CString sssss=ttttt;//这一句编译报如下错:
cannot convert from char[50] to ATL::CString <BaseType,StringTraits>
但是在VC6下生成的unicode工程中这么做编译没问题,转换到VS2005后也没问题,只有使用2005直接生成的工程会这样。
怎么会这样呢?
[解决办法]
CString sssss(ttttt);
[解决办法]
sssss.Format( "%s ",ttttt);
[解决办法]
wchar_t ttttt[50]=_T( "aaaaaaaaaaaa ");
CString sssss=ttttt;//这一句编译报如下错:
[解决办法]
char ttttt[50]= "aaaaaaaaaaaa ";
CString sssss;
sssss.Format( "%s ", ttttt);
[解决办法]
wchar_t *ttttt=L "aaaaaaaaaaaa ";
CString sssss;
sssss.Format( "%s%s%s%s%s ",ttttt,++ttttt,++ttttt,++ttttt,++ttttt);
AfxMessageBox(sssss,MB_OK);
你试试上面的代码,感受一下
[解决办法]
wchar_t *ttttt=L "abcdefg ";
CString sssss;
sssss.Format( "%s%s%s%s%s ",++ttttt,++ttttt,++ttttt,++ttttt,++ttttt);
AfxMessageBox(sssss,MB_OK);
这样可能更清晰些
[解决办法]
memcpy(sssss,ttttt,50)
[解决办法]
up
[解决办法]
char ttttt[50]= "aaaaaaaaaaaa ";
LPCTSTR temp = ttttt;
CString sssss= temp;
试试这样
[解决办法]
char ttttt[50]= "aaaaaaaaaaaa ";
CString temp;
temp=(LPCTSTR)tttt;
这样应该可以
[解决办法]
LPCTSTR和LPCSTR类型一样
换上LPCSTR也应该是一样的
[解决办法]
不管别的 我觉得format一下市最好的
[解决办法]
format 会出错。。。。。???