Open In App

std::string::resize() in C++

Last Updated : 05 Sep, 2022
Suggest changes
Share
Like Article
Like
Report

resize() lets you change the number of characters. Here we will describe two syntaxes supported by std::string::resize() in C++ Return Value : None 

Syntax 1: Resize the number of characters of *this to 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()).

Note : If num > size() then, the rest of characters are initialized by the '\0'. 

CPP
// CPP code for resize (size_type num) #include <iostream> #include <string> 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; } 

Output:

Original String : GeeksforGeeks Using resize : Geeks

Syntax 2: Uses a character to fill the difference between size() and 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
// CPP code for resize (size_type num, char c ) #include &lt;iostream&gt; #include &lt;string&gt; using namespace std;   // Function to demonstrate insert void resizeDemo(string str) {  cout &lt;&lt; &quot;Using resize :&quot; &lt;&lt; endl;  cout &lt;&lt; &quot;If num &gt; size() : &quot;;    // Resizes str to character length of  // 15 and fill the space with '$'  str.resize(15, '$');  cout &lt;&lt; str &lt;&lt; endl;  cout &lt;&lt; &quot;If num &lt; size() : &quot;;    // Resizes str to a string with  // 5 initial characters only   str.resize(5, '$');  cout &lt;&lt; str; } // Driver code int main() {  string str(&quot;GeeksforGeeks&quot;);    cout &lt;&lt; &quot;Original String : &quot; &lt;&lt; str &lt;&lt; endl;  resizeDemo(str);    return 0; } 

Output:

Original String : GeeksforGeeks Using resize : If num > size() : GeeksforGeeks$$ If num < size() : Geeks

If you like GeeksforGeeks(We know you do!) and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org.


Similar Reads

Article Tags :
Practice Tags :