How to concatenate a std::string and an int

📝 How to concatenate a std::string and an int
Introduction
Concatenating a std::string and an int might seem simple, but it can quickly become tricky when you encounter incompatible types or unexpected results. In this blog post, we will address this common issue and provide you with easy solutions to concatenate a std::string and an int, ensuring that you get the desired output every time. Let's dive in!
The Problem
As mentioned in the context, suppose you have the following variables:
std::string name = "John";
int age = 21;And you want to combine them to get a single string "John21".
Solution 1: Using std::to_string()
One straightforward solution is to use the std::to_string() function to convert the int to a std::string. Here's an example:
#include <iostream>
#include <string>
int main() {
std::string name = "John";
int age = 21;
std::string combined = name + std::to_string(age);
std::cout << combined << std::endl;
return 0;
}Output:
John21By using std::to_string(age), we convert the int value age into a std::string, allowing us to concatenate it with the std::string variable name using the + operator.
Solution 2: C++20's std::format()
If you are using C++20 or later, an even better solution is to utilize the std::format() function from the <format> header, which simplifies string formatting operations:
#include <iostream>
#include <format>
#include <string>
int main() {
std::string name = "John";
int age = 21;
std::string combined = std::format("{}{}", name, age);
std::cout << combined << std::endl;
return 0;
}Output:
John21Here, we use the std::format("{}{}", name, age) syntax, where the {} placeholders are replaced with the corresponding values of name and age.
Conclusion
Concatenating a std::string and an int may seem like a simple task, but understanding the correct approach can save you from unexpected errors. By using std::to_string() or std::format(), you can easily combine these two data types and obtain the desired output.
Next time you encounter this problem, remember these solutions, and concatenating std::string and int will no longer trip you up!
Feel free to share your thoughts in the comments section below. How do you usually concatenate variables of different types in your code? Let's discuss and learn from each other! 😄🚀
Take Your Tech Career to the Next Level
Our application tracking tool helps you manage your job search effectively. Stay organized, track your progress, and land your dream tech job faster.



