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

📅  最后修改于: 2021-05-30 02:31:47             🧑  作者: Mango

resize()允许您更改字符。这是我们将描述std支持的两种语法:C++中的字符串:: resize()
返回值:

语法1:将* this的字符数调整为num。

void string ::resize (size_type num)
num: New string length, expressed in number of characters.
Errors: 
Throws length_error if num is equal to string ::npos.
Throws length_error if the resulting size exceeds the maximum number of
characters(max_size()).

注意:如果num> size(),则其余字符由’\ 0’初始化。

// CPP code for resize (size_type num)
  
#include 
#include 
using namespace std;
   
// Function to demonstrate insert
void resizeDemo(string str)
{
   
    // Resizes str to a string with
    // 5 initial characters only 
    str.resize(5);
    cout << "Using resize : ";
    cout << str;
}
  
// Driver code
int main()
{
    string str("GeeksforGeeks ");
   
    cout << "Original String : " << str << endl;
    resizeDemo(str);
   
    return 0;
}

输出:

Original String : GeeksforGeeks 
Using resize : Geeks

语法2:使用字符来填充size()和num之间的差异。

void string ::resize (size_type num, char c )
num: is the new string length, expressed in number of characters.
c: is the character needed to fill the new character space.
If num > size() : character c is used to fill space.
If num < size() : String is simply resized to num number of characters.
Errors: 
Throws length_error if num is equal to string ::npos.
Throws length_error if the resulting size exceeds the maximum number of
characters(max_size()).
// CPP code for resize (size_type num, char c )
  
#include 
#include 
using namespace std;
   
// Function to demonstrate insert
void resizeDemo(string str)
{
    cout << "Using resize :" << endl;
    cout << "If num > size() : ";
      
    // Resizes str to character length of
    // 15 and fill the space with '$'
    str.resize(15, '$');
    cout << str << endl;
    cout << "If num < size() : ";
      
    // Resizes str to a string with
    // 5 initial characters only 
    str.resize(5, '$');
    cout << str;
}
  
// Driver code
int main()
{
    string str("GeeksforGeeks");
   
    cout << "Original String : " << str << endl;
    resizeDemo(str);
   
    return 0;
}

输出:

Original String : GeeksforGeeks
Using resize :
If num > size() : GeeksforGeeks$$
If num < size() : Geeks
要从最佳影片策划和实践问题去学习,检查了C++基础课程为基础,以先进的C++和C++ STL课程基础加上STL。要完成从学习语言到DS Algo等的更多准备工作,请参阅“完整面试准备课程”