×

C++ int into String

Data type conversion is a standard editing process. You may need to convert variable from one type of data to another in a variety of situations. There are two ways to modify data types: ambiguous type conversion (producer-made) and transparent-type conversion (user-generated) (manual). Explicit type conversion is available in many editing languages with built-in methods.

If you convert data from a complete format to a character unit, you may use it to run multiple character unit functions. Compared to the function of a character unit, the performance of arithmetic can be difficult. Consider the following scenario for printing a current date.

C++ int into String

An integer can be converted to a string in three ways:

  • The stringstream class is used.
  • The to_string() function is used.
  • By utilising boost.lexical cast.

Using stringstream class to convert an integer to a string.

A stream class defined in the header file is stringstream. It's a stream class that lets you execute input-output actions on strings.

The operations used to insert or extract data are as follows:

  • It pulls data from the stream using the operator >>.
  • The operator<< enters data into the stream.

Let's look at an example to better comprehend the notion of operators.

  • The insertion operator puts 100 into the stream in the sentence below.
    stream1 << 100;
  • The >> extraction operator extracts data from the stream and saves it in the  x variable in the sentence below.
    stream1 >> x.

Example :

#include <iostream> 
#include <bits/stdc++.h>
#include <stdlib> 
#include<sstream>  
using namespace std;  
int main() {  
  int x;  
  cout<<"enter an integer value";  
  cin>>x;  
  stringstream sst;  
  sst<<x;  
  string a;  
  sst>>a;  
  cout<<"\n"<<"An integer value is : "<<x<<"\n";  
  cout<<"String representation of an integer value is : "<<a;   
}  

OUTPUT:

Enter an integer value 14
An integer value is: 14
String representation of an integer value is : 14
........................................................
Process executed in 4553.34 seconds
Press any key continue.

Explanation:

We generated the k variable in the previous example and wish to convert its value to a string value. The stringstream class has been used to transform the x integer value into a string value. We can also do it the other way around, converting a string to an integer value using simply the stringstream class.

Let's look at an example to better grasp the notion of string to number conversion.

#include <iostream>
#include <bits/stdc++.h>
#include <stdlib>  
#include<sstream>  
using namespace std;  
int main()  
{  
  string number ="99";  
  stringstream sst;  
  ss<<number;  
  int x;  
  sst>>x;  
  cout<<"The value of the string is : "<<number<<"\n";  
  cout<<"Integer value of the string is : "<<x;  
}  

OUTPUT:

The value of the string is : 99
Integer value of the string is : 99
.......................................................
Process executed in 0.33 seconds
Pres any key to continue.

Explanation

In the above program in C++, string number is 99 and string stream we are using to generate x variable.

Using to_string() method to convert an integer to a string.

The to_string () method takes a single integer and turns it to a string using the to_string () method.

Example:

#include <iostream>  
#include <stdlib>
#include <bits/sdtc++.h>
#include<string>  
using namespace std;  
int main()  
{  
 int x=14;  
 float y=16.2;  
string str= to_string(x);  
string str1= to_string(y);  
cout<<"string value of integer x is :"<<str<<"\n";  
cout<<"string value of y is : "<< str1;  
return 0;
}  

OUTPUT:

string value of integer x is : 14
string value of y is : 16.200000
.................................................
Process executed in 2834.44 seconds
Press any key to continue.

Explanation

In the above example in C++, we are using to_string method to convert integer number to string number which is a predefined number in C++.

Using boost.lexical method to convert an integer to a string.

The boost.lexical cast package includes a cast operator, boost.lexical cast, that transforms a string value to an integer or other data type value and back.

Let's look at an example of how to convert an integer to a string using boot.lexical method:

#include <iostream>  
#include <bits/stdc++.h>
#include <stdlib>
#include <string>
#include <boost/lexical_cast.hpp>  
using namespace std;  
int main()  
{  
int x=12;   
string str = boost::lexical_cast<string>(x);  
cout<<"string value of integer x is :"<<str<<"\n";  
}  

OUTPUT:

string of integer x is : 12
...............................................
Process executed in 323.32 seconds
Press any key to continue.

Explanation:

Using the lexical cast () method, we transformed the value of the x variable into a string value in the above example.

Another Example:

#include <iostream> 
#include <bits/stdc++.h>
#include <stdlib>
#include <string> 
#include <boost/lexical_cast.hpp>  
using namespace std;  
int main()  
{  
string str="5678";  
 int b = boost::lexical_cast<int>(str);  
cout<<"Integer value of string str is : "<<b<<"\n";  
}  

OUTPUT:

Integer value of string str is : 5678
..............................................................
Process Executed in 427.36 seconds
Press any key to continue.

Explanation

We used the lexical cast () method to turn the string value into an integer value in the previous example.

One more example to understand better:

#include <boost/lexical_cast.hpp> // for lexical_cast()
#include <iostream>
#include <string> // for string
using namespace std; 
int main()
{
// Declaring float
float f_value = 13.4;


// Declaring int
int x_value = 19;


// lexical_cast() converts a float into string
string strf = boost::lexical_cast<string>(f_value);


// lexical_cast() converts a int into string
string strx = boost::lexical_cast<string>(x_value);


// Displaying string converted numbers
cout << "The float value in string is : ";
cout << strf << endl;
cout << "The int value in string is : ";
cout << strx << endl; 
return 0;
}

OUTPUT:

The float value in string is : 13.4
The int value in string is : 19

Explanation

In the above example in C++, Her we used a lexical_cast.hpp library which is a method of using lexical() to turn the string value into an integer.


Related Topics

C++ Date and Time

The date and time formats in C++ will be covered in this article. Because C++ lacks a proper date and time format, we must rely on the c language. The...

7 minutes read.

Reverse function in C++

The function std::reverse() is included in the standard template library of C++. It takes in a beginning and ending iterator, reversing the order. To use the reverse statement, we need...

2 minutes read.

Different Ways to Compare Strings in C++

This section will go over the many methods for comparing strings in the C++ programming language. The string comparison checks if the first string is equal to another string. HELLO...

6 minutes read.

Program that produces different results in C and C++

Introduction: There are many such programs that compile run both in C and C++ but give different outcomes when compiled by the C and C++ compilers. There are a variety of such...

6 minutes read.

Sizeof() Operators in C++

sizeof() Operators in C++ The sizeof() operator in C++ defines the size of variables, constants, or data types. It is a unique operator that manipulates other operators and returns the size...

4 minutes read.

Single level Inheritance

Inheritance is a fundamental element of C++’s Object-Oriented Programming (OOP). It allows a class (called the derived class) to inherit characteristics and attributes from another class (called the base class)....

5 minutes read.

C++ Mutable keyword

C++ mutable keyword Mutable class storage specifier in C++ Storage class specifiers in C are auto, register, static, and external. Typedef is also considered as a specifier of the storage...

4 minutes read.

Observer Design Pattern in C++

The Observer design pattern is a behavioural design pattern that allows an object (known as the subject) to notify other objects (known as observers) when its state changes. This is...

3 minutes read.

C++ find missing in the second array

Given two arrays A and B of sizes n and m. Find the elements from array A that are not present in array B. Example Input : a[] = {1, 2, 3, 5,...

3 minutes read.

Multilevel Inheritance

C++ Multilevel Inheritance Multilevel inheritance is such an inheritance in which a derived class is created from another derived class. C++ Multilevel Inheritance Example In this example, a base class Student is inherited in...

2 minutes read.

C++ Forward Iterators

Iterators : Iterators serve as a link between algorithms and STL containers, allowing the data inside the container to be modified. They let you to iterate through the container, access and...

3 minutes read.

C++ String

A string is a collection of characters. C++ programming language supports both C string as well as standard C++ library string. In C++, string is an object of std::string class. C Style String The C style...

5 minutes read.

Constructor Overloading

The program contains more than one constructor in a class with the same name, and different types of arguments are called constructor overloading. Calling of constructor depends on the number and types...

2 minutes read.

C++ Void Pointer

A void pointer is a general purpose pointer that can have an address of any data type but is not related to any data type. Void Pointer Syntax: void *ptr;  We can't...

2 minutes read.

Decimal to Hexadecimal in C++

We need to write a program in C++ that converts a decimal number into an equal hexadecimal number given a decimal value as input i.e. convert a number having a...

2 minutes read.

RTTI (Run-Time Type Information) in C++

In C++, RTTI or Run-Time Type Information reveals information about the data type of an object at runtime and only works with classes that have at least one virtual function....

3 minutes read.

fscanf() Function in the C++

In the C++ programming language, the fscanf() method can be used to read data from a file stream. Syntax: The syntax for the fscanf() function in the C++ programming language is as...

3 minutes read.

Virtual class in C++

Introduction to Virtual Base class Virtual base classes can be utilized in virtual inheritance as a mechanism for examining many "instances" of a certain class while searching through multiple inheritances in...

6 minutes read.

New Operator in C++

Dynamic memory allocation in C++ means manually allocating the memory by the developer duing run-time. The dynamic memory is allocated in the heap section of the RAM, whereas the static...

3 minutes read.

Multiple Inheritance

C++ Multiple Inheritance Multiple inheritance is such an inheritance in which a derived class inherits properties of more than one base class.     C++ Multiple Inheritance Example In this example, two base classes Square and...

2 minutes read.