您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關C++中String類如何使用,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
C語言中沒有字符串的概念,實際上是字符數組,但是C中有個頭文件"string.h",提供了字符數串拼接、拷貝、比較等函數接口。而C++中string是字符串類,在使用時需要包含string頭文件,由于string是std命名空間下的類,所以也需要引入std命名空間,下面是示例代碼:
#include <string>
using std::string;
2、C++中string對象的定義與初始化
C++中string類提供了多種方式初始化一個字符串對象:
string str1; //默認的初始化,str1是一個空字符串
string str2(str1); //使用拷貝構造函數利用已知字符串初始化
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是一個類,能夠創建字符串對象,而字符串是由一個個字符組成,那么有沒有操作字符的方式呢?
當然有!我們可以判斷字符串中是否有空格,也可以改變字符串中字符的大小寫等。
這些操作都定義在頭文件"cctype"中
下面簡單羅列幾個cctype中定義的一些string中操作字符串的方法:
isalnum(c) //判斷字符c是否是字母或數字
isalpha(c) //判斷字符c是否是一個字母
iscntrl(c) //判斷c是否是一個控制字符
isdigit(c) //判斷c是否是一個數字
isspace(c) //判斷c是否是一個空格 等價于 c == '
注意這里的"cctype"就是C++中使用C標準的頭文件的寫法,等價于"ctype.h"
除此之外,我們也可以使用范圍for對字符串中的字符進行遍歷。
比如:
//遍歷字符串,將所有字符轉為大寫字母
#include <iostream>
#include <cctype>
int main()
{
std::string str("Hello World!");
for (auto &c : str)
c = toupper(c);
return 0;
}
看完上述內容,你們對C++中String類如何使用有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。