Converting Number to String in C++
C++ : Converting number to string
In this section, we will learn about how to write a program in C++ for converting a number into a string. This is a very common problem which we need to tackle while solving any competitive coding question. Many at times we have to convert a number to a string in order to perform various operations or the result should be of data type string, so we should be familiar with the concept of how to do so.
Converting a Number into String
In C++ programming language, there are mainly three methods for converting a number into string which are as follows :
1. Using string Stream
2. Using to_string()
3. Using boost lexical cast
Method 1 : Using string Stream
In this method, a string stream declares an object which takes a number value initially and then gets converted to a string using str().
Example:
#include<iostream>
#include<sstream>
#include<string>
using namespace std;
int main()
{
int num = 20;
ostringstream str1;
str1 << num;
string p = str1.str();
cout << "The newly formed string from number is : ";
cout << p << endl;
return 0;
}
Output:
The newly formed string from number is : 20
Method 2 : Using to_string()
In this method, the function to_string() takes a number(which can be any data type) and returns the number in the string data type.
Example:
#include<iostream>
#include<string>
using namespace std;
int main()
{
int i_val = 20;
float f_val = 30.50;
string stri = to_string(i_val);
string strf = to_string(f_val);
cout << "The integer in string is : ";
cout << stri << endl;
cout << "The float in string is : ";
cout << strf << endl;
return 0;
}
Output:
The integer in string is : 20 The float in string is : 30.500000
Method 3 : Using boost lexical cast
In this method, the ” lexical_cast() ” function remains the same, but in ‘boost lexical cast‘ time argument list modifies to “lexical_cast(numeric_var).
Example:
#include<boost/lexical_cast.hpp>
#include<iostream>
#include<string>
using namespace std;
int main()
{
float f_val = 10.5;
int i_val = 17;
string strf = boost::lexical_cast(f_val);
string stri = boost::lexical_cast(i_val);
cout << "The float value in string is : ";
cout << strf << endl;
cout << "The int value in string is : ";
cout << stri << endl;
return 0;
}
Output:
The float value in string is : 10.5 The int value in string is : 17
Prime Course Trailer
Related Banners
Get PrepInsta Prime & get Access to all 200+ courses offered by PrepInsta in One Subscription
Get over 200+ course One Subscription
Courses like AI/ML, Cloud Computing, Ethical Hacking, C, C++, Java, Python, DSA (All Languages), Competitive Coding (All Languages), TCS, Infosys, Wipro, Amazon, DBMS, SQL and others

Login/Signup to comment