C++--標準庫字符串類

一.C++標準庫

C++標準庫
1.C++標準并不是C++語言的一部分
2.C++標準庫是由類庫和函數(shù)庫組成的集合
3.C++標準庫中定義的類和對象位于std命名空間中
4.C++標準庫的頭文件都不帶.h后綴
5.C++標準庫涵蓋了C庫的功能
C++編譯環(huán)境的組成
C++--標準庫  字符串類
C++標準庫預定義了多數(shù)常用的數(shù)據(jù)結構
C++--標準庫  字符串類
代碼示例

為安次等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及安次網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為網(wǎng)站制作、網(wǎng)站建設、安次網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

二.字符串類

Q:C語言存在的問題
1.C語言不支持真正意義上的字符串
2.C語言用字符數(shù)組和一組函數(shù)實現(xiàn)字符串操作
3.C語言不支持自定義類型,因此無法獲得字符串類型
解決方法
1.從C到C++的進化過程引入了自定義類型
2.在C++中可以通過類完成字符串類型的定義

標準庫中的字符串類
1.C++語言直接支持C語言的所有概念
2.C++語言中沒有原生的字符串類型
3.C++標準庫提供了string類型(直接支持字符串連接,支持字符串的大小比較,支持子串查找和提取,支持字符串的插入和替換)
字符串按大小排列(按照字典)與一連串的排列代碼示例

#include <iostream>
#include <string>

using namespace std;

void string_sort(string a[], int len)//大小排列
{
    for(int i=0; i<len; i++)
    {
        for(int j=i; j<len; j++)
        {
            if( a[i] > a[j] )//字符串大小比較
            {
                swap(a[i], a[j]);
            }
        }
    }
}

string string_add(string a[], int len)//添加
{
    string ret = "";

    for(int i=0; i<len; i++)
    {
        ret += a[i] + "; ";
    }

    return ret;
}

int main()
{
    string sa[7] = 
    {
        "Hello World",
        "D.T.Software",
        "C#",
        "Java",
        "C++",
        "Python",
        "TypeScript"
    };

    string_sort(sa, 7);

    for(int i=0; i<7; i++)
    {
        cout << sa[i] << endl;
    }

    cout << endl;

    cout << string_add(sa, 7) << endl;

    return 0;
}

運行結果如圖所示
C++--標準庫  字符串類
1為大小排列的結果,2為一串排列的結果

題目分析:字符串循環(huán)右移
示例:abcdefg循環(huán)右移3位得到efgabcd
分析:1.先找到所需移位字符串的位置 2循環(huán)經(jīng)過一定的次數(shù)會重復

#include <iostream>
#include <string>

using namespace std;

string operator >> (const string& s, unsigned int n)
{
    string ret = "";
    unsigned int pos = 0;

    n = n % s.length();//長度與循環(huán)次數(shù)取余
    pos = s.length() - n;//確定循環(huán)的位置
    ret = s.substr(pos);//找到位置
    ret += s.substr(0, pos);//將循環(huán)位置的前面的字符串添加到該點后面

    return ret;
}

int main()
{
    string s = "abcdefg";
    string r = (s >> 3);

    cout << r << endl;

    return 0;
}

運行的結果如圖所示
C++--標準庫  字符串類
小結
1.應用開發(fā)中大多數(shù)的情況都在進行字符串處理
2.C++中沒有直接原生的字符串類型
3.標準庫中通過string類支持字符串的概念
4.string類支持字符串和數(shù)字的相互轉換
5.string類的應用使得問題的求解變得簡單

文章題目:C++--標準庫字符串類
當前URL:http://muchs.cn/article44/gesihe.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供面包屑導航品牌網(wǎng)站建設、域名注冊、自適應網(wǎng)站、靜態(tài)網(wǎng)站、小程序開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設