C++ tolower example: In the previous article, we have discussed about Program to Determine all Pythagorean Triplets in the Range in C++ and Python. Let us learn how to Convert a String to Upper & Lower Case in C++ Program.
Converting a String to Upper & Lower Case using STL & Boost Library in C++
C++ string to lower: We are going to see how we can convert the string into upper and lowercase in two ways i.e.
Convert a String to Upper Case using STL :
String to lower c++: We can convert the string to uppercase using the toupper( ) function, however the function works on character and not on the whole string so we have to iterate through all characters inside the string by passing it as a lambda function.
#include <iostream>
#include <string>
#include <algorithm>
int main(int argc, char const *argv[])
{
//String to uppercase
std::string str = "Example string";
std::cout << "The initial string is ->" << str << std::endl;
std::for_each(str.begin(), str.end(), [](char &ch)
{ ch = ::toupper(ch); });
std::cout << "The new string in upper case ->" << str;
return 0;
}
Output : The initial string is ->Example string The new string in upper case ->EXAMPLE STRING
Convert a String to Lower Case using STL :
How to make a string lowercase c++: Just like the toupper( ) function, tolower( ) converts the string to lower case.
#include <iostream>
#include <string>
#include <algorithm>
int main(int argc, char const *argv[])
{
//String to lowercase
std::string str = "EXAMPLE String";
std::cout << "The initial string is ->" << str << std::endl;
std::for_each(str.begin(), str.end(), [](char &ch)
{ ch = ::tolower(ch); });
std::cout << "The new string in lower case ->" << str;
return 0;
}
Output: The initial string is ->EXAMPLE String The new string in lower case ->example string
The downside of toupper( ) and tolower( ) functions are that, they can only convert one character at a time, to overcome that we need to use the boost library algorithm.
Convert a String to Upper Case and Lower Case using Boost Library :
Using tolower in c++: The boost algorithm library has functions boost::to_upper( ), boost::to_lower( ) to convert the string into upper or lower case.
#include <iostream>
#include <string>
#include <boost/algorithm/string.hpp>
int main()
{
std::string str = "Boost library algorithm for STRING CONVERSION";
// convert the string to upper case
boost::to_upper(str);
std::cout << "To upper case: " << str << std::endl;
// Converts the string to lower case
boost::to_lower(str);
std::cout << "To lower case: " << str << std::endl;
}
Output : To upper case: BOOST LIBRARY ALGORITHM FOR STRING CONVERSION To lower case: boost library algorithm for string conversion
Creating a new string after case conversion :
C++ make string lowercase: While we can modify the string using boost::to_upper( ) and boost::to_lower( ), in case we need the original string we can use the boost::to_upper_copy() or boost::to_lower_copy() to copy the modified string and store the value into new variable.
#include <iostream>
#include <string>
#include <boost/algorithm/string.hpp>
int main()
{
std::string str = "Boost library algorithm for STRING CONVERSION", newUpper, newLower;
// convert the string to upper case
newUpper = boost::to_upper_copy(str);
std::cout << "To upper case: " << newUpper << std::endl;
// Converts the string to lower case
newLower = boost::to_lower_copy(str);
std::cout
<< "To lower case: " << newLower << std::endl;
std::cout << "The original string: " << str;
}
Output : To upper case: BOOST LIBRARY ALGORITHM FOR STRING CONVERSION To lower case: boost library algorithm for string conversion The original string: Boost library algorithm for STRING CONVERSION