您的位置:首页 > 其它

char*, string, CString, String^的相互转换

2015-05-29 12:01 260 查看
从char*转换:

char *chars = "Hello";

从char*到string: string s(chars);
从char*到CString: CString s(chars);
从char*到String^: String ^s = gcnew String(chars);

从string转换

string str("Hello");

从string到char*: char chars[64]; strcpy_s(chars, str.c_str());
从string到CString: CString s(str.c_str());
从string到String^: String ^s = gcnew String(str.c_str());

从CString转换

CString str("Hello");

从CString到char*: char chars[64]; strcpy_s(chars, str);
从CString到string: string s(str);
从CString到String^: String ^s = gcnew String(str);

从String^转换

CString str("Hello");

pin_ptr<const wchar_t> wch = PtrToStringChars(str);

1.从[b]String^ 到char*: [/b]

char chars[64];

size_t convertedChars = 0;

wcstombs_s(&convertedChars, chars, wcslen(wch) + 1, wch, _TRUNCATE);

2.从[b]String^ 到string: [/b]

string s(wch);

3.从[b]String^ 到CString: [/b]

String ^s = gcnew String(wch);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: