C++中提供了一種新的數據類型——字符串類型(string)。實際上string並不是C++的基本類型,它是在C++標准庫中聲明的一個字符串類,用這種數據類型可以定義對象,每一個字符串變量都是string類的一個對象。
一、字符串類型:string
字符串類包含在頭文件#include
中,因此使用string時必須包含頭文件#include。字符串變量必須先定義後使用,定義字符串變量要使用類名string。在定義字符串變量時不需指定長度,它的長度隨其中的字符串長度而改變。
例:string s1; //定義字符串變量s1
string s2="hello"; //定義字符串變量s2,同時對其初始化
二、初始化string類對象的方式
1、用字符串常量給字符串變量賦值
例:string s1;
s1="hello"; //這點與字符數組不相同
2、用一個字符串變量給另一個字符串變量賦值
例:string s1="hello";
string s2;
s2=s1; //這一點與字符數組也有所不同
3、可以對字符串變量中某一字符進行操作
例:string s1="Then";
s1[2]='a'; //修改序號為2的字符,修改後s1就變為than
字符串常量以'\0'作為結束符,但將字符串常量存放到字符串變量中時,只存放字符串本身而不包括'\0’。
三、string類型的常見操作
1、字符串復制用賦值號
例:s1=s2; //將s2賦給s1
2、字符串連接用加號
例:string s1="hello ";
string s2="world";
string s3=s1+s2;
輸出s3就是hello world。注意:在字符串連接時,要連接的字符串中至少有一個是字符串變量。不能全部都是字符串常量。
3、字符串比較直接用關系運算符
可以直接用==(等於)、>(大於),<(小於),>=(大於等於),<=(小於等於),!=(不等於)直接進行比較,其返回值是bool類型。
四、字符串數組
可以用string定義字符串數組。
例:string s1[3]={"zhang","li","zhao"};
注意:
1、字符串數組中的每一個元素都相當於一個字符串變量。
2、與二維字符數組不同的是,字符串數組並不要求每個字符串元素具有相同的長度。對於每一個字符串元素而言,它的長度是可以變化的。
3、每一個字符串元素中只包含字符串本身的字符而不包含'\0'。
4、字符串數組的麼一個元素存放的都是一個字符串的地址。