直接上代码:
void CMFCApplication1Dlg::OnBnClickedButton1()
{
//1. CString类的构造函数
CString csTest1(); //空字符串
CString csTest2(L"Tog" ); //csTest2 = L"Tog"
CString csTest3 = csTest2; //csTest3 = L"Tog"
CString csTest4( csTest2 + " " + csTest3 ); //csTest4 = L"Tog Tog"
CString csTest5( 's' ); //csTest5 = L"s"
CString csTest6( 's', 6 ); //csTest6 = L"ssssss"
CString csTest7(_T("Hello World"),3); <span style="white-space:pre"> </span>//csTest7 = L"Hel"
CString csNoe = L"Hello World"; <span style="white-space:pre"> </span>//csNoe = L"Hello World";
//2. CString类的大小写转换及顺序转换函数
CString csS1(L"Test CString"); <span style="white-space:pre"> </span>//csS1 = L"Test Cstring" 构造
csS1.MakeUpper(); //csS1 = L"TEST CSTRING" 将字符串中的所有字符转换为大写字符
csS1.MakeLower(); //csS1 = L"test cstring" 将字符串中的所有字符转换为小写字符
csS1.MakeReverse(); //csS1 = L"gnirtsc tset" 将字符串中的字符以倒序排列
//3. 其他
int n = csS1.Replace('c', 'C'); <span style="white-space:pre"> </span>//csS1 = L"gnirtsC tset" 用其它字符替换指定的字符
n = csS1.Replace(L"tset", L"Test" ); <span style="white-space:pre"> </span>//csS1 = L"gnirtsC Test" <span style="white-space:pre"> </span>用其它字符替换指定的字符
n = csS1.Replace(L"gnirtsC ", L"Cstring"); <span style="white-space:pre"> </span>//csS1 = L"CstringTest" <span style="white-space:pre"> </span>用其它字符替换指定的字符
n = csS1.Remove('C'); //csS1 = L"stringTest" 从一个字符串中移走指定的字符
//4. 插入和删除
n = csS1.Insert(0 , L"IN"); //csS1 = L"INstringTest" 在字符串中的给定索引处插入一个字符或一个子字符串
n = csS1.Delete(0, 2); //csS1 = L"stringTest" <span style="white-space:pre"> </span>从一个字符串中删除一个或多个字符
//5. 格式化字符串
csS1.Format(L"%s%d", L"Test Cstring ", 123); //csS1 = L"Test Cstring 123" 像sprintf函数一样格式化该字符串
//6. 字符串赋值、拼接
csS1 = L"Hello"; //csS1 = L"Hello" 给CString对象赋一个新值
csS1 = csS1 + L" "; //csS1 = L"Hello " 连接两个字符串并返回一个新字符串
csS1 += L"Tog"; //csS1 = L"Hello Tog" 把一个新字符串连接到一个已经存在的字符串的末端
//7. 比较
CString csS2 = L"Hello Tog";
n = csS1.Compare(csS2); <span style="white-space:pre"> </span>//如果字符串是一样的则返回零,
n = csS1.Compare( L"HelloTog"); <span style="white-space:pre"> </span>//如果字符串是不一样的则返回非零值
//8. 提取
csS2 = csS1.Mid(1, 5); <span style="white-space:pre"> </span>//csS2 = L"ello " 从指定位置提取一个字符串一部分
csS2 = csS1.Left(5); <span style="white-space:pre"> </span>//csS2 = L"Hello" 提取一个字符串的左边一部分
csS2 = csS1.Right(3); <span style="white-space:pre"> </span>//csS2 = L"Tog" 提取一个字符串的右边一部分
//9. 缓冲区访问
LPTSTR p = csS1.GetBuffer(2); <span style="white-space:pre"> </span>// P = L"Hello Tog" 返回一个指向CString对象的指针
csS1.ReleaseBuffer(); <span style="white-space:pre"> </span>// 释放对GetBuffer所返回的缓冲区的控制权
p = csS1.GetBufferSetLength(5); <span style="white-space:pre"> </span>// p = csS1 = L"Hello" 返回一个指向CString对象的指针,字符串被截断为指定的长度
// Windows专用
BSTR bs = csS1.AllocSysString(); <span style="white-space:pre"> </span>// bs = L"Hello" 由CString数据分配一个BSTR
}