——南昌理工學院acm集訓隊
cctype標頭檔案中的函式
使用以下函式需要新增標頭檔案
isalnum(c) 當c是字母或數字時為真
isalpha(c) 當c是字母時為真
iscntrl(c) 當c 是控制字元時為真
isdigit(c) 當c是數字時為真
isgraph(c) 當c不是空格但可列印時為真
islower(c) 當c是小寫字時為真
isprint(c) 當c是可列印字元時為真(即c是空格或c具有可是形式)
ispunct(c) 當c是標點符號時為真(即c不是控制字元、數字、字母、可列印空白中的一種)
isspace(c) 當c是空白時為真(即c是空格、橫向製表符、縱向製表符、回車符、換行符、進紙符中的一種)
isupper(c) 當c是大寫字母時候為真
isxdigit(c) 當c是十六進製制數為真
tolower(c) 如果c是大寫字母,輸出對應的小寫字母;否則原樣輸出c
toupper(c) 如果c是小寫字母,輸出對應大寫字母;否則原樣輸出c
處理每個字元?使用基於範圍的for語句
string str(「some string」)
for(auto c;str) //對於str字串中的每個字元
cout《使用ccyupe標頭檔案中包含的ispunct函式來統計string物件中標點符號的個數
string s
(「hello world!
!!」)
;decltype
(s.size()
)punct_cnt=0;
//統計s中標點符號的個數
for(
auto c:s)
}cout<在這裡插入**片
使用toupper函式來改變字串中的字元(對換大小寫)
cout << s << endl;
}
輸出結果:hello
特註:每次迭代時,變數c引用string物件s的下乙個字元,賦值給c也就是在改變s中對應字元的值。因此在執行a=toupper(a)時,,實際上改變了c繫結字元的值。整個迴圈結束後,str中的所有字元都變成了大寫
如何只處理一部分字元
兩種方式:
1.運用下標運算子()接收的是std::size_type型別的值(無符號數),整個引數表示訪問的字元的位置;返回值是該位置上字元的引用
string物件的下標從0計起,s[0]是第乙個字元,s[2]是第二個字元,s[s.size()-1]是最後乙個字元
使用超出範圍的下標將引發不可預知的結果(溢位),以此推斷,使用下標范文空string也會引發不可預知的後果
在訪問指定字元前記得一定要檢查字串是否為空
將字串的首字元改寫成大寫形式
cout <<
"s[0]="
<<<
" "<}
結果:s[0]=h hello string物件中字元的處理
經常要對string物件中的單個字元進行處理,如某個特殊字元是否為空白字元 字母或數字。以下各種字元操作函式,適用於string物件的字元 或其他任何char值 這些函式定義在cctype標頭檔案中 isalnum c 如果c是字母或數字,則為true isalpha c 字母 iscntrl c ...
處理string物件中的字元
1 範圍for string word helloworld for auto a word a為單個字元 如果需要對字元進行修改要加上引用 for auto a word a x 上面就把word裡面的所有字元替換為了x2 下標運算子 看成陣列 3 迭代器 isalnum c 字母或數字為真 is...
JavaScript中的String物件
string物件提供的方法用於處理字串及字元。常用的一些方法 charat index 返回字串中index處的字元。indexof searchvalue,fromindex 該方法在字串中尋找第一次出現的searchvalue。如果給定了fromindex,則從字串內該位置開始搜尋,當searc...