0、都已包含響應庫函式並已進行using宣告。
1、string初始化
string s1; //預設建構函式,s1為空字串
string s2(s1); //將s2初始化為s1的乙個副本
string s3("value"); //將s3初始化為乙個字串字面值副本
string s4(n,'c'); //將s4初始化為字元『c』的n個副本
警告:字串字面值與標準庫string型別不是同一種型別。
2、string物件的讀寫
2.1 讀取未知數目的string物件
int main()
{ string word;
while(cin>>word)
cout<
當鍵入ctrl-z時,跳出讀取迴圈。
2.2 用getline讀取正行文字
這個函式接受兩個引數:乙個輸入流物件和乙個string物件。讀取輸入流到換行符的位置,將之前的讀取的內容儲存到string物件中。
string line;
getline(cin,line);
3、string的物件操作
3.1 size和empty操作
size函式返回string中字元的個數,包含換行符。empty函式返回為bool值,如果物件為空則返回true,否則返回false。
string st("value\n");
cout<3.2 string::size_type型別
string物件中返回的一種配套型別,本質一般是unsigned。但是為了與硬體無關,設定了這個型別。值得注意的是,相關操作必須是這個型別,特別重要的是,一定不要使用int型別。
3.3 關係操作符
關係操作符==,<,<=,>,>=分別用來測試物件是否相等,小於(等於),大於(等於)。返回值是bool值。
string s1="hello";
string s2="hello world";
string s3="hello";
string s4="hiya";
賦值,相加(連線)
但要注意的是兩個字串字面值不能相加(連線)。
string s1="hello";
string s2="world";
string s3=s1+" "+s2; //ok,"hello world"
string s4="hello"+" "+s2; //error.兩個字串字面值不能相加
string s5=s1+" "+"world"; //ok
3.5 從string物件中獲取字元
通常使用下標或索引。下標操作符是乙個size_type型別的值。並且可用作左值。
string st("value");
cout<*
3.6 string物件中字元的處理
在cctype標頭檔案中定義了很多函式。可以對string物件中的單個字元進行處理。
isalnum(c) //如果c是字母或數字,則為true.
isalpha(c) //如果c是字母,則為true.
iscntrl(c) //如果c是控制字元,則為true.
isdigit(c) //如果c是數字,則為true.
isgraph(c) //如果c不是空格,但可列印,則為true.
islower(c) //如果c是小寫字母,則為true.
isprint(c) //如果c是可列印的字元,則為true.
ispunct(c) //如果c是標點符號,則為true.
ispace(c) //如果c是空白字元,則為true.
isupper(c) //如果c是大寫字母,則為true.
isxdigit(c) //如果c是十六進製制數,則為true.
tolower(c) //如果c是大寫字母,則返回其小寫字母形式,否則直接返回c.
toupper(c) //如果c是小寫字母,則返回其大寫字母形式,否則直接返回c.
標準庫String型別
1 string物件的讀寫 用iostream標準庫可以用於讀寫內建型別如int double等的值,同樣也可以用iostream和string標準庫,使用輸入輸出操作符來讀寫string物件 注 從標準輸入讀取string,並將讀入的串儲存在s中。string型別的輸入操作符 另外還有乙個有用的s...
標準庫 string 型別
從標準輸入讀取 string 並將讀入的串儲存在 s 中。string 型別的輸入操作符 讀取並忽略開頭所有的空白字元 如空格,換行符,製表符 讀取字元直至再次遇到空白字元,讀取終止。輸入 hello world 則螢幕上將輸出 hello 而不含任何空格。這個函式接受兩個引數 乙個輸入流物件和乙個...
標準庫型別string
include using namespace std string定義在命名空間std中文件 string標準庫 string是乙個內部定義的類,初始化類物件的方式是通過類內部定義的構造方法決定的。下面列出幾個string常用的初始化方式 string s1 預設的初始化方式,s1是乙個空串 st...