📜  C++中的std :: 字符串:: append()

📅  最后修改于: 2021-05-30 05:41:25             🧑  作者: Mango

该成员函数在字符串的末尾附加字符。

  1. 语法1:追加字符串str的字符。如果生成的大小超过最大字符数,则将引发length_error。
    string& string::append (const string& str)
    
    str :  is the string to be appended.
    Returns :  *this
    // CPP code to demonstrate append(str)
       
    #include 
    #include 
    using namespace std;
       
    // Function to demonstrate append()
    void appendDemo(string str1, string str2)
    {
        // Appends str2 in str1
        str1.append(str2);
        cout << "Using append() : ";
        cout << str1 << endl;
    }
       
    // Driver code
    int main()
    {
        string str1("Hello World! ");
        string str2("GeeksforGeeks");
       
        cout << "Original String : " << str1 << endl;
        appendDemo(str1, str2);
       
        return 0;
    }
    

    输出:

    Original String : Hello World! 
    Using append() : Hello World! GeeksforGeeks
    
  2. 语法2:最多附加字符串str的str_num个字符,从索引str_idx开始。如果str_idx> str,则会抛出out_of_range。尺寸()。如果结果大小超过最大字符数,则抛出length_error。
    string& string::append (const string& str, size_type str_idx, size_type str_num)
    
    str : is the string to be appended
    str_num : being number of characters
    str_idx : is index number.
    Returns : *this.
    
    // CPP code to demonstrate 
    // append(const char* chars, size_type chars_len)
      
    #include 
    #include 
    using namespace std;
       
    // Function to demonstrate append()
    void appendDemo(string str1, string str2)
    {
        // Appends 5 characters from 0th index of
        // str2 to str1
        str1.append(str2, 0, 5);
        cout << "Using append() : ";
        cout << str1;
    }
       
    // Driver code
    int main()
    {
        string str1("GeeksforGeeks ");
        string str2("Hello World! ");
       
        cout << "Original String : " << str1 << endl;
        appendDemo(str1, str2);
       
        return 0;
    }
    

    输出:

    Original String : GeeksforGeeks 
    Using append() : GeeksforGeeks Hello
    
  3. 语法3:追加C-串CSTR的字符。如果生成的大小超过最大字符数,则抛出length_error。
    string& string::append (const char* cstr)
    
    *cstr : is the pointer to C-string.
    Note : that cstr may not be a null pointer (NULL).
    Return : *this
    
    // CPP code to demonstrate append(const char* cstr)
      
    #include 
    #include 
    using namespace std;
       
    // Function to demonstrate append
    void appendDemo(string str)
    {
        // Appends "GeeksforGeeks"
        // in str
        str.append("GeeksforGeeks");
        cout << "Using append() : ";
        cout << str << endl;
    }
       
    // Driver code
    int main()
    {
        string str("World of ");
       
        cout << "Original String : " << str << endl;
        appendDemo(str);
       
        return 0;
    }
    

    输出:

    Original String : World of 
    Using append() : World of GeeksforGeeks
    
  4. 语法4:追加chars_len字符数组字符的字符。如果生成的大小超过最大字符数,则抛出length_error。
    string& string::append (const char* chars, size_type chars_len)
    
    *chars is the pointer to character array to be appended.
    chrs_len : is the number of characters from *chars to be appended.
    Note that chars must have at least chars_len characters. 
    Returns : *this.
    
    // CPP code to demonstrate 
    // (const char* chars, size_type chars_len)
      
    #include 
    #include 
    using namespace std;
       
    // Function to demonstrate append
    void appendDemo(string str)
    {
        // Appends 5 characters from "GeeksforGeeks"
        // to str
        str.append("GeeksforGeeks", 5);
        cout << "Using append() : ";
        cout << str << endl;
    }
       
    // Driver code
    int main()
    {
        string str("World of ");
       
        cout << "Original String : " << str << endl;
        appendDemo(str);
       
        return 0;
    }
    

    输出:

    Original String : World of 
    Using append() : World of Geeks
    
  5. 语法5:追加字符c的出现次数。如果生成的大小超过最大字符数,则抛出length_error。
    string& string::append (size_type num, char c)
    
    num : is the number of occurrences
    c : is the character which is to be appended repeatedly. 
    Returns : *this.
    
    // CPP code to illustrate
    // string& string::append (size_type num, char c)
        
    #include 
    #include 
    using namespace std;
        
    // Function to demonstrate append
    void appendDemo(string str)
    {
        // Appends 10 occurrences of '$'
        // to str
        str.append(10, '$');
        cout << "After append() : ";
        cout << str;
       
    }
               
    // Driver code
    int main()
    {
        string str("#########");
       
        cout << "Original String : " << str << endl;
        appendDemo(str);
        
        return 0;
    }
    

    输出:

    Original String : #########
    After append() : #########$$$$$$$$$$
    
  6. 语法6:追加范围[beg,end)的所有字符。如果生成的大小超过最大字符数,则抛出length_error。
    string& string::append (InputIterator beg, InputIterator end)
    
    first, last : Input iterators to the initial and final positions 
    in a sequence.
    Returns *this.
    
    // CPP code  to illustrate
    // append (InputIterator beg, InputIterator end)
       
    #include 
    #include 
    using namespace std;
       
    // Function to demonstrate append
    void appendDemo(string str1, string str2)
    {
       
        // Appends all characters from
        // str2.begin()+5, str2.end() to str1
        str1.append(str2.begin() + 5, str2.end());
        cout << "Using append : ";
        cout << str1;
    }
    // Driver code
    int main()
    {
        string str1("Hello World! ");
        string str2("GeeksforGeeks");
       
        cout << "Original String : " << str1 << endl;
        appendDemo(str1, str2);
       
        return 0;
    }
    

    输出:

    Original String : Hello World! 
    Using append : Hello World! forGeeks
    
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”