读书人

怎么在函数中将传入的char*型变量转化

发布时间: 2012-03-27 13:44:24 作者: rapoo

如何在函数中将传入的char*型变量转化为CString类型?
例如:

[code=C/C++][/code]

void fun(char *Msg)
{
CString str;
str.Format(_T("%s"),Msg);
}//这样不行


CString str(Msg);//这样也不行


到底应该怎样转化啊?



[解决办法]
那说明,你的工程是unicode的。
用CStringA吧
[解决办法]
CString str(Msg);
这样应该是可以的。
[解决办法]
直接CString str = Msg,
[解决办法]
str.Format("%s",Msg);为何不行?我觉得可以
工程是UNICODE?vs有这个问题,你再设置里改一下,vs用的不是很多,忘记在哪了,你自己找找,vc6毫无压力,我都是这样转的
[解决办法]
你的问题,Msg在内存中大概是这样的形式: 0x01 0x02 0x00 0x03 0xcc 0xcc

会在0x00这里停止转









探讨

引用:

Msg是\0结尾的字符串吗?


这也是个问题...
Msg在内存中大概是这样的形式: 0x01 0x02 0x00 0x03 0xcc 0xcc

'\0'和 0x00 也无法区分啊..

读书人网 >C++

热点推荐