MFC CString 用法小结.docx
《MFC CString 用法小结.docx》由会员分享,可在线阅读,更多相关《MFC CString 用法小结.docx(17页珍藏版)》请在三一办公上搜索。
1、MFC CString 用法小结 MFC CString 用法小结 1. 初始化方法: (1) 直接复制,如Cstring=”mingrisoft”; (2) 通过构造函数初始化,如 CString str( ,100)/与分配100个字节,填充空格 char* p=”feiqiang”; Cstring(p);delete p. (3) 加载工程中的字符串资源,如CString str;str.LoadString(IDS_STR); (4) 使用CString类的成员函数Format初始化,如CString str; int i=0; str.Format(“value:%d”,i); 2
2、. 将CString转化为char*,如 CString str=”feqiang”; char *p; p=str.GetBuffer; delete p; 将char*转化为CString,如: char* p=”feiqiang”; plen(p)=0; Cstring str(p); char* 和char数组的转化: char buf5 =a,b,c; char *p; p=new char5; p=buf; 将字符串转化为数字: CString str=”12”; int i=atoi(str); long j=atoll(str); float f=atof(str); 将数字转
3、化为字符串: CString str; int i=12; str.Format(“%d”,i); long j=12; str,Format(“%ld”,j); 同理其他类型。 3. 字符串的相关操作即方法的使用: (1) 提取字符串中的中文,如 CString strtext,temp,strres; GetLlgItem(IDC_TEXT)-GetWindowText(strtext);/通过ID获取编辑框中的文本 for(int =0;iSetWindowText(strtes);/设置文本框中的文本 (2) 英文字符串首字母大写,如 将以空格符分隔的英文单词的第一个字母大写(小写)
4、str.GetAt(i);/提取字符串索引为i个字母 str.MakeLower;/转化为小写 tmp.MakeUpper;/转化为大写 (2) 按制定符号分割字符: int pos=str.Find(strchar);/查找字符,如果没找到,则返回0,找到则返回字符的位置,参数可以是字符也可以是字符串 while(pos0) str1=str.Left(pos);/取左,参数为字符串的个数 str=str.Right(str.GetLength-pos-1);/取右,参数同上 tmp.Format(“%srn”,str1);/字符串中rn代表回车化行符 strres+=tmp; pos=st
5、r.Find(strchar); (3) 删除指定的中文: m_text.GetWindowText(strtxt); m_text.GetSel(istart,iend);/得到文本框中选中的文本,并且得到文本的头索引和尾索引 if(istart=iend) return; str1=strtxt.Left(istart); if(iend=strtxt.GetLength) str2=”; else str2=strtxt.Right(strtxt.GetLength-iend); strres+=str1; strres+=str2; (4) 替换字符串: strtxt.Replace(
6、strchar,strnew);/用新串替换旧串 (5) 根据CPoint查找位置: CPoint pt;/获取字符串时获取鼠标所在字符串的位置 int pos=m_text.CharFromPos(pt);/根据pt获取字符串中的位置,即其左侧字符的位置 if(str.IsEmpty)/判断字符串是否为空 m_num.AddString(strres);/文本框追加字符串 将字符转化为大写:ch=ch-32; (6) 字符串忽略大小写的比较: CString str=”feiqiang”; int com=str.CompareNoCase(“mingri”);/如果相等返回0,否则返回-1
7、; (7) 连接换行符:CString str=”feiqiang t”; (8) 字符反转:str.MakeReverse; (9) 取出首位空格:str.TrimLeft; str.TrimRight; 取出字符串中的所有空格,str.Replace(“ ”,”); (10) 在ListBox中查找字符串 int index=:SendMessage(m_stringlist.GetSafeHwnd,LB_FINDSTRINGEXACT,-1, (LPARAM)(LPCTSTR)strtext);/通过SendMessage函数向列表控件发送LB_FINDSTRINGEXACT消息来查找指
8、定字符串是否在列表空间中,如果存在则返回索引位置。 (11) 字符串数组: CString str5 array; CString str5=“feiqiang”,”mingri”,”mr”; for(int i=0;i5;i+) array.Add(stri);/添加元素 for(int j=0;j要删除字符串的最大长度(GetCount - nIndex)时会出错,当nCount过大,没有足够的字符删除时,此函数不执行。 示例: CString str1,str2,str3; char a; str1 = nihao; str2 = nIhao; int x; / int i=(str1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MFC CString 用法小结 用法 小结
链接地址:https://www.31ppt.com/p-3161441.html