C++ Strings

In C++, strings are a fundamental data type used to store and manipulate sequences of characters. Unlike other programming languages, C++ does not have a built-in string data type. Instead, C++ provides a library called “string” that allows you to work with strings efficiently.

The string library in C++ provides a class called “string” that encapsulates all the necessary functionality to manipulate strings. To use this class, you need to include the “ header:

#include <string>

Once you have included the “ header, you can declare a string variable:

std::string myString;

Here, `std::string` is the class name, and `myString` is the name of the variable. You can assign a value to the string variable using the assignment operator (`=`):

myString = "Hello, World!";

You can also initialize a string variable at the time of declaration:

std::string myString = "Hello, World!";

C++ strings provide a wide range of member functions that allow you to perform various operations on strings. Let’s explore some of the most commonly used functions:

Length

The `length()` function returns the length of the string:

std::string myString = "Hello, World!";
int length = myString.length(); // length = 13

Concatenation

You can concatenate two strings using the `+` operator or the `append()` function:

std::string str1 = "Hello";
std::string str2 = "World";
std::string result1 = str1 + " " + str2; // result1 = "Hello World"
std::string result2 = str1.append(" ").append(str2); // result2 = "Hello World"

Substrings

You can extract a substring from a string using the `substr()` function. It takes two arguments: the starting index and the length of the substring:

std::string myString = "Hello, World!";
std::string substring = myString.substr(7, 5); // substring = "World"

Searching

The `find()` function allows you to search for a substring within a string. It returns the index of the first occurrence of the substring, or `std::string::npos` if the substring is not found:

std::string myString = "Hello, World!";
size_t index = myString.find("World"); // index = 7

Comparison

You can compare two strings using the comparison operators (`==`, `!=`, `<`, `>`, `<=`, `>=`) or the `compare()` function. The `compare()` function returns an integer indicating the lexicographical relationship between the two strings:

std::string str1 = "Hello";
std::string str2 = "World";
bool isEqual = (str1 == str2); // isEqual = false
bool isLessThan = (str1 < str2); // isLessThan = true
int comparisonResult = str1.compare(str2); // comparisonResult = -1

These are just a few examples of the many functions available in the C++ string library. By leveraging these functions, you can perform a wide range of operations on strings, such as manipulating, searching, comparing, and extracting substrings.

It’s important to note that C++ strings are mutable, meaning you can modify their contents. This makes them a powerful tool for working with text-based data in C++.

In conclusion, C++ strings provide a convenient and efficient way to work with sequences of characters. By utilizing the string library and its member functions, you can easily manipulate and perform operations on strings in your C++ programs.

Scroll to Top