今天就跟大家聊聊有關(guān)C++中String類如何使用,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
專注于為中小企業(yè)提供成都網(wǎng)站制作、成都做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)長嶺免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
C語言中沒有字符串的概念,實(shí)際上是字符數(shù)組,但是C中有個頭文件"string.h",提供了字符數(shù)串拼接、拷貝、比較等函數(shù)接口。而C++中string是字符串類,在使用時需要包含string頭文件,由于string是std命名空間下的類,所以也需要引入std命名空間,下面是示例代碼:
#include <string>
using std::string;
2、C++中string對象的定義與初始化
C++中string類提供了多種方式初始化一個字符串對象:
string str1; //默認(rèn)的初始化,str1是一個空字符串
string str2(str1); //使用拷貝構(gòu)造函數(shù)利用已知字符串初始化
string str21 = str1;
string str2 = ("Hello World!");
string str3("HelloWorld");
3、C++ string 對象的操作符(以字符串s為例)
os << s //將s寫到輸出流os中
is >> s //將輸入流寫到s中
getline(is, s) //從is中讀取一行到s中
s.empty() //判斷字符串s是否空
s.size() //獲取字符串s的大小
s1 == s2 //比較字符串s1是否等于字符串s2
s1 + s2 //將字符串s1和s2拼接成一個新額字符串
從命令行讀取輸入,存到字符串:
#include <iostream>
int main()
{
std::string line;
while (getline(cin, line))
if (line.size() > 1024)
cout << line << endl;
return 0;
}
4、C++ string 中字符的處理方法
C++中string是一個類,能夠創(chuàng)建字符串對象,而字符串是由一個個字符組成,那么有沒有操作字符的方式呢?
當(dāng)然有!我們可以判斷字符串中是否有空格,也可以改變字符串中字符的大小寫等。
這些操作都定義在頭文件"cctype"中
下面簡單羅列幾個cctype中定義的一些string中操作字符串的方法:
isalnum(c) //判斷字符c是否是字母或數(shù)字
isalpha(c) //判斷字符c是否是一個字母
iscntrl(c) //判斷c是否是一個控制字符
isdigit(c) //判斷c是否是一個數(shù)字
isspace(c) //判斷c是否是一個空格 等價于 c == '
注意這里的"cctype"就是C++中使用C標(biāo)準(zhǔn)的頭文件的寫法,等價于"ctype.h"
除此之外,我們也可以使用范圍for對字符串中的字符進(jìn)行遍歷。
比如:
//遍歷字符串,將所有字符轉(zhuǎn)為大寫字母
#include <iostream>
#include <cctype>
int main()
{
std::string str("Hello World!");
for (auto &c : str)
c = toupper(c);
return 0;
}
看完上述內(nèi)容,你們對C++中String類如何使用有進(jìn)一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。
網(wǎng)頁題目:C++中String類如何使用
網(wǎng)頁地址:http://vcdvsql.cn/article20/pegdco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、企業(yè)建站、App開發(fā)、網(wǎng)站維護(hù)、微信公眾號、軟件開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)