国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

C++ Builder 初學問與答(十六)

2019-11-17 05:06:03
字體:
來源:轉載
供稿:網友
  16.C/C++語言在CB中的一些特定用法  2)AnsiString是從Delphi中引進來的嗎?
  答:CB的核心組件VCL是用Object Pascal語言寫出的,所以CB的VCL組件的屬性有很多都是使用long string,例如:Text、 Name、Caption等屬性都是使用Object Pascal的long string。基于此關系,CB只好建立了和Object Pascal的long string相應的類別,我們將它稱為AnsiString。  3)AnsiString與String有什么區別?  答: C++ Builder在Sysdefs.h頭文件中有這樣的定義:  typedef  AnsiString String;  從這一點在看他二者是完全一樣的,只是書寫起來后者更方便一些,前者是意圖更明了一些。  4)能介紹一下AnsiString類的一些常見函數及其用法嗎?  答:當然可以了,下面就常見函數做一下簡單介紹:  成員函數語法功能c_strchar *_fastcall c_str() const返回字符串數據的指針Deletevoid _fastcall Delete(int index,int count)由index處開始刪除count個字符Insertvoid _fastcall Insert(const AnsiString& str,int index)由index處開始插入字符str到原字符串中IsEmptybool _fastcall IsEmpty() const返回字符串是否為空,true表示空字符串Lengthint _fastcall Length() const返回字符串長度LowerCaseAnsiString _fastcall LowerCase() const將字符串中的大寫字母改寫成小寫UpperCaseAnsiString _fastcall UpperCase() const將字符串中的小寫字母改寫成大寫Posint _fastcall Pos(cont AnsiString& substr)const;找出子字符串在原字符串中由第幾個位置開始SubStringAnsiString _fastcall SubString(int index,int count)const返回由index處向后取count個字符ToDoubledouble _fastcall ToDouble() const將字符轉成雙精度數值ToIntint _fastcall ToInt() const將字符轉成整形IntToStrAnsiString _fastcall IntToStr(int Value)將整形轉成字符串TrimAnstString _fastcall Trim() const返回一個新的字符串,它會將原字符串前后空白或控制字符清除后再返回WideCharwchar_t fastcall WideChar(wchart* dest,int destsize)const轉換AnsiString到一個寬字符數組(COM中常用) 更多文章 更多內容請看C/C++技術專題專題,或


  5)AnstString成員函數與傳統字符串函數有何不同之處?  答:我們可以通過二者的一個對照表來查看他們的之間的不同之處:
  AnsiString成員函數功能傳統字符串函數=字符串拷貝strcpy+=字符串合并strcat+字符串連接無==,!+=,<,<=,>,>=字符串比較strcmpc_str()相互轉換無,但可以利用指針實現Delete刪除子字符串無Insert插入子字符串無Length求字符串長度strlenLowerCase字母轉成小寫strlwrPos找出子字符串strstrSetLength設置字符串長度無ToInt轉成整形無ToDouble轉成雙精度sPRintfUpperCase字母轉成大寫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;  (未完待續) 更多文章 更多內容請看C/C++技術專題專題,或

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沧州市| 扎囊县| 上饶市| 巩义市| 泗水县| 凉城县| 灵台县| 衡山县| 桂林市| 蒲城县| 鸡西市| 鹤壁市| 凤凰县| 水城县| 虎林市| 那曲县| 工布江达县| 尼木县| 河北省| 潮州市| 台中市| 东阿县| 会东县| 抚松县| 田东县| 榆林市| 五常市| 定陶县| 凤阳县| 来凤县| 永州市| 根河市| 阳谷县| 景洪市| 株洲市| 延边| 高阳县| 桦川县| 德保县| 晋江市| 荥阳市|