关于CString字符类型

来源:互联网 发布:java做计算器 编辑:程序博客网 时间:2024/06/05 14:43

CString数据类型并非每次都可以存放任意大小的字符串,当前CString数据类型可以存放多长字符串取决于前一次CString成功存放多长的字符串

例如:

CString str = "123";     //str当前字符串大小为3

strcpy(str.GetBuffer(0) , "12345678")      //溢出报错

strcpy(str.GetBuffer(100) , "12345678")   //正确:str现在已经申请了100个字节


CString转换成*char

例如:

char *chBuf;

CString str;

chBuf = str.GetBuffer(0);

注:

CString.GetBuffer(0) = CString.GetBuffer(CString.GetLength())

CString.GetBuffer(0)相当于返回字符串首字母



CString.ReleaseBuffer():用于重新计算字符串长度

例如: CString str="hello";
 char *chBuf = str.GetBuffer(0);

 strcpy(chBuf , "str"); 

 int len=str.GetLength();   //len = 5;

 str.ReleaseBuffer();

 len=str.GetLength();  //len=3;





0 0
原创粉丝点击