1、string物件的讀寫
用iostream標準庫可以用於讀寫內建型別如int、double等的值,同樣也可以用iostream和string標準庫,使用輸入輸出操作符來讀寫string物件:
注:從標準輸入讀取string,並將讀入的串儲存在s中。string型別的輸入操作符:
另外還有乙個有用的string io操作getline。這個函式接受兩個引數:乙個輸入流物件和乙個string物件。getline函式從輸入流下一行讀取,並儲存讀取的內容到string中,但不包含換行符。和輸入操作符不一樣,getline並不忽略開頭的換行符。只要getline遇到換行符,即便它是輸入的第乙個字元,getline也將停止輸入並返回。如果第乙個字元就是換行符,則string引數將被置為空。
2、string類常用操作
1)string物件的長度是指string物件中字元的個數,可以通過size操作獲取:
cout<
注:size操作返回值是string::size_type型別的值,在標準庫中將其定義為unsigned型別。對於任一種給定的資料型別,它的unsigned型所能表示的最大正整數比對應的signed型要大一倍。所以,size_type儲存的string長度是int所能儲存的兩倍。故不能把size的返回值賦值給乙個int變數。
而如果只需要知道string物件是否為空,則用empty操作。
cout<
2)string關係操作符
string類定義了幾種關係操作符用來比較兩個string值的大小,這些操作符實際上是比較每個string物件的字元。其再比較的時候是區分大小寫的,即同乙個字元的大小寫形式被認為是兩個不同的字元。
關係操作符<, <=, >, >=分別用於測試乙個string物件是否小於、小於等於、大於、大於等於另乙個string物件。
3)string物件的賦值
對於string物件而言,可以把乙個string物件賦值給另乙個string物件:
對於兩個string物件相加與此類似
4)和字串字面值的連線
當進行string物件和字串字面值混合連線操作時,+操作符的左右運算元必須至少有乙個是string型別。
5)從string物件獲取字元
string型別通過下表操作符()來訪問string物件中的單個字元。下表操作符需要取乙個size_type型別的值,來標明要訪問字元的位置。這個下表通常被稱為「下標」或「索引」。
注:下標操可用作左值
3、string物件中字元的處理
對string物件中的單個字元進行處理時,需要知道某個特殊字元是否為空白字元、字母或數字。string物件中有關字元處理的函式都在cctype標頭檔案中定義。
有關string類其他相關屬性及方法的定義參見msdn
標準庫 string 型別
從標準輸入讀取 string 並將讀入的串儲存在 s 中。string 型別的輸入操作符 讀取並忽略開頭所有的空白字元 如空格,換行符,製表符 讀取字元直至再次遇到空白字元,讀取終止。輸入 hello world 則螢幕上將輸出 hello 而不含任何空格。這個函式接受兩個引數 乙個輸入流物件和乙個...
標準庫型別string
include using namespace std string定義在命名空間std中文件 string標準庫 string是乙個內部定義的類,初始化類物件的方式是通過類內部定義的構造方法決定的。下面列出幾個string常用的初始化方式 string s1 預設的初始化方式,s1是乙個空串 st...
標準庫string型別
一.首先作為一種標準庫型別,string存在四種基本的建構函式。如下 string s 預設建構函式,s為空串 string s s1 用s1來初始化s string s my blog 將s初始化為乙個字串字面值 string s n,c 將s初始化為n個 c 的副本 二.對於輸入主要就是cin ...