您的位置:首页 > 其它

MFC中 CString与Char[] 的相互转换

2016-07-14 13:32 417 查看
为了简化操作,我写成了两个函数:

//CString转Char[] 返回数组首元素地址
char * CSocket_ClientDlg::CStringToCharArray(CString str)
{
int str_len = WideCharToMultiByte(CP_ACP, 0, str, str.GetLength(), NULL, 0, NULL, NULL);//计算字节数
char * CharArray = new char[str_len+1];
WideCharToMultiByte(CP_ACP, 0, str, str.GetLength(), CharArray, str_len, NULL, NULL);
CharArray[str_len] = '\0';
return CharArray;
}


//Char[]转CString返回CString
CString CSocket_ClientDlg::CharArrayToCString(char CharArray[])
{
CString str;
int Char_len = strlen(CharArray);
int len = MultiByteToWideChar(CP_ACP, 0, CharArray, Char_len, NULL, 0);//计算字符数
TCHAR *buf = new TCHAR[len + 1];
MultiByteToWideChar(CP_ACP, 0, CharArray, Char_len, buf, len);
buf[len] = '\0';
str.Append(buf);
delete[]buf;
return str;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cstring 函数 MFC