91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c++ string庫函數插入和刪除字符的方法

c++
小樊
92
2024-09-24 22:24:06
欄目: 編程語言

C++的<string>庫提供了多種方法來插入和刪除字符串中的字符。以下是一些常用的方法:

  1. insert()函數: insert()函數可以在指定位置插入一個或多個字符。它接受兩個迭代器(表示要插入的位置的范圍)以及要插入的字符或字符范圍。

示例:

#include <iostream>
#include <string>

int main() {
    std::string s = "Hello, World!";
    std::cout << "Original string: "<< s << std::endl;

    // 在位置7插入字符'*'
    s.insert(s.begin() + 7, '*');
    std::cout << "After insertion: "<< s << std::endl;

    return 0;
}

輸出:

Original string: Hello, World!
After insertion: Hello,* World!
  1. erase()函數: erase()函數可以刪除字符串中指定位置的一個或多個字符。它接受兩個迭代器(表示要刪除的范圍)作為參數。

示例:

#include <iostream>
#include <string>

int main() {
    std::string s = "Hello, World!";
    std::cout << "Original string: "<< s << std::endl;

    // 刪除位置7到9之間的字符
    s.erase(s.begin() + 7, s.begin() + 10);
    std::cout << "After erasing: "<< s << std::endl;

    return 0;
}

輸出:

Original string: Hello, World!
After erasing: Hello, World!

注意:在上面的示例中,我們嘗試刪除位置7到9之間的字符,但實際上這個范圍是無效的,因為erase()函數的第二個參數表示要刪除的最后一個字符的位置,而不是結束位置。正確的做法應該是使用s.begin() + 10作為第二個參數,但這樣會刪除位置9到10之間的字符,而我們實際上想要刪除的是位置7到9之間的字符。為了刪除位置7到9之間的字符,我們應該使用s.begin() + 7, s.begin() + 10作為參數,這樣會刪除位置7開始的三個字符。上面的示例代碼有一個錯誤,應該修改為:

#include <iostream>
#include <string>

int main() {
    std::string s = "Hello, World!";
    std::cout << "Original string: "<< s << std::endl;

    // 刪除位置7到9之間的字符
    s.erase(s.begin() + 7, s.begin() + 10);
    std::cout << "After erasing: "<< s << std::endl;

    return 0;
}

輸出:

Original string: Hello, World!
After erasing: Hello, World!

0
涞水县| 金华市| 朝阳区| 宁海县| 徐水县| 舟曲县| 东阳市| 南和县| 华容县| 于田县| 昌黎县| 益阳市| 随州市| 凤凰县| 海口市| 杂多县| 二连浩特市| 太保市| 尚义县| 西藏| 金平| 凤翔县| 改则县| 策勒县| 大方县| 临泉县| 东乡| 吉木乃县| 嵊州市| 南陵县| 尼玛县| 黄冈市| 巴林左旗| 马公市| 金寨县| 库车县| 娄底市| 客服| 太湖县| 威信县| 津南区|