C++中string append和push_back

  • Post author:
  • Post category:其他


一个拼字符串,一个拼字符~

1. append函数

常用的函数原型:

  basic_string &append( const basic_string &str );
  basic_string &append( const char *str );
  basic_string &append( const basic_string &str, size_type index, size_type len );
  basic_string &append( const char *str, size_type num );
  basic_string &append( size_type num, char ch );
  basic_string &append( input_iterator start, input_iterator end );

append() 函数可以完成以下工作:

在字符串的末尾添加str,
在字符串的末尾添加str的子串,子串以index索引开始,长度为len
在字符串的末尾添加str中的num个字符,
在字符串的末尾添加num个字符ch,
在字符串的末尾添加以迭代器start和end表示的字符序列.

append函数常用的三个功能:

  • 直接添加另一个完整的字符串:如str1.append(str2);
  • 添加另一个字符串的某一段子串:如str1.append(str2, 11, 7);
  • 添加几个相同的字符:如str1.append(5, ‘.’);注意,个数在前字符在后.上面的代码意思为在str1后面添加5个”.”
 //========================================  
#include<iostream>  
using namespace std;  
//========================================  
int main()  
  
{  
    string str1="I like C++";  
    string str2=",I like the world.";  
    string str3="Hello";  
    string str4("Hi");  
    //====================================  
    str1.append(str2);  
    str3.append(str2, 11, 7);  
    str4.append(5, '.');  
    //====================================  
    cout<<str1<<endl;  
    cout<<str3<<endl;  
    cout<<str4<<endl;  
    system("pause");  
    return 0;     
}  
//========================================

运行结果为

I like C++,I like the world.
Hello World.
Hi.....





2. push_back函数

函数原型:

void push_back(
    value_type _Ch
);

功能:将字符添加到字符串的末尾,注意是字符而不是字符串。相当于

basic_string &append( size_type num, char ch );

,其中num=1。

my_str.push_back("123");//错误
my_str.push_back('1');//ok