CString str = "hello"; buf = (LPSTR)(LPCTSTR)str; 上面两种方法的原理都是基于CString类把char字符串保存了。得到其内部字符串首地址就可以把数据复制出来,或直接强制转换。 UNICODE工程 UNICODE工程有上面的方法会报错的。应为WCAHR不能直接转换成char,所以可在上面的基础上用WideCharToMultiByte函数转换一下。 ...
int char_leng; Cstring str="abcd"; char_leng=str.GetLength();//获取字符串长度 char *str_temp=(char *)malloc(char_leng+1);//根据字符串长度申请一个长度=char_leng+1的内存 for(int i=0;i<char_leng;i++) str_temp[i]=str.GetAt(i); //获取字符串 str_temp[char_leng]='\0';//ch...
CString转换成char *字符串 (LPSTR)(LPCSTR)强转 --- 用CString类的成员函数:OemToANSI()即可。 --- char szTemp[500]; CString strTemp = "123456789"; memset(szTemp,0,sizeof(szTemp)); sprintf(szTemp,"%s",strTemp); ---1: CString strBuf="awefasdf"; char pBuff[100]; memset(pBuff,0x00...
CString s = "abcd";char *p = (LPSTR)(LPCTSTR)s;
CString类型转换为char*类型 方法1.Char p[8];CString str=“hello”;memcpy(p, str, str.GetLength());方法2:char *p1;p1 = str.GetBuffer(str.GetLength());方法3:char *p1;p1 = (LPSTR)(LPCTSTR) str;
在C语言中表示字符串,没有string概念,只可以用char*和char[];在MFC中,为了服务于字符串操作,添加了类CString,该类的头 文件是afx.h. 从char* 到CString的转换很简单,只需要用CString的构造函数即可。 本文介绍了CString到const char*和char* 的转换方法。
假定楼主的环境是UNICODE型。include<atlconv.h> CEdit m_edit;CString strText;// 获取edit控件的字符串 m_edit.GetWindowText(strText);WCHAR* pText = strText.Buffer(strText.GetLength());// 转换成char指针 USES_CONVERSION;char* p = W2A(pText);// 最后楼主可以用strcpy将char指针的内容...
这个隐含两个细节:uc没有'\0'结尾,因此冒然当字符串赋值给string或CString,在正常字符串后面要出乱码(不知道如何结尾)这是unsigned 字符数组,和一般的char array =>string不同,需要强制类型转换。方法很多,如下列举3种:【我用的GCC编译器, 用string演示;VC的CString方法相同】include <iostream>...
//方法一设置 一个类成员变量同某一个CEdit相关联,下面是在主对话框类下的函数CString str = "";str.Format("\r\n%s\r\n",info);m_chatMsg += str;UpdateData(FALSE);//方法二CEdit* pEdit=(CEdit*)GetDlgItem(IDC_EDIT_CHAT);int nLine=pEdit->GetLineCount();if( nLine>500){pEdit-...
1.CString 转 int CString strtemp = “100”; int intResult; intResult= ...