C++ Builder 初学问与答(十六)
2008-03-08 21:33:03 来源:WEB开发网 銆�

核心提示:16.C/C++语言在CB中的一些特定用法2)AnsiString是从Delphi中引进来的吗? 答:CB的核心组件VCL是用Object
16.C/C++语言在CB中的一些特定用法
2)AnsiString是从Delphi中引进来的吗?

5)AnstString成员函数与传统字符串函数有何不同之处? 答:我们可以通过二者的一个对照表来查看他们的之间的不同之处:
AnsiString成员函数 功能 传统字符串函数 = 字符串拷贝 strcpy += 字符串合并 strcat + 字符串连接 无 ==,!+=,<,<=,>,>= 字符串比较 strcmp c_str() 相互转换 无,但可以利用指针实现 Delete 删除子字符串 无 Insert 插入子字符串 无 Length 求字符串长度 strlen LowerCase 字母转成小写 strlwr Pos 找出子字符串 strstr SetLength 设置字符串长度 无 ToInt 转成整形 无 ToDouble 转成双精度 sPRintf UpperCase 字母转成大写 strupr
6)如何实现传统字符串与AnsiString字符串的相互转换? 答:传统的C语言是使用字符来组成字符串的(字符串末尾必须有’\0’做为结束标志),其格式和AnsiString并不相同。由于在CB中我大量使用AnsiString格式,所以有时也难免要进行一些转换,我们可以通过下列三种方法来实现: 方法1:AnsiString字符串转换成字符串数组: 先利用AnsiString类别中的c_str()方法转换成传统字符串数组,再用strcpy拷贝,将它拷贝到字符数组中去: char s1[20]; strcpy(s1,Edit1->Text.c_str()); 方法2:AnsiString转换成传统字符串可以利用字符指针来实现: 可以通过字符指针来实现: char *s; s=Edit->Text.c_str(); 方法3:利用字符指针实现传统字符串转换成AnsiString: char *s=”试一试,看看能不能成功!”; Edit->Text=s; (未完待续)

更多精彩
赞助商链接