OneBite.Dev - Coding blog in a bite size

Slice A String In C++

Code snippet for how to Slice A String In C++ with sample and detail explanation

When working with C++, manipulating string data is a frequent requirement. One common practice in this regard is slicing a string which is splitting it into smaller parts. In this article, we’ll delve into how to slice a string in C++.

Code snippet for Slicing a String

Let’s start with a simple C++ code snippet for slicing a string:

#include <iostream>
#include <string>

int main() {

    // Create a string object
    std::string str = "Hello, world";

    // Slice the string
    std::string sliced_str = str.substr(0, 5);

    // Display the sliced string
    std::cout << "The sliced string is: " << sliced_str << std::endl;

    return 0;
}

Code Explanation for Slicing a String

This block of code is written in such a way that even beginners can understand. Let’s dissect it step by step.

  1. First, the necessary libraries are included. For this code, we need the iostream and string libraries.
#include <iostream>
#include <string>
  1. The main() function is declared, which is the entry point for any C++ program.
int main() {
  1. Inside the main() function, we declare a string named str with a value of "Hello, world":
std::string str = "Hello, world";
  1. Next, we slice the string using the substr() function. This function takes two arguments: the first argument is the starting index of the substring, and the second is the length of substring. Here, we start from index 0 (remember, C++ is 0 indexed) and the length is 5. This means the sliced string will contain the first five characters of ‘str’.
std::string sliced_str = str.substr(0, 5);
  1. Finally, we print out the sliced string. The output of this code will be: “Hello”.
std::cout << "The sliced string is: " << sliced_str << std::endl;
  1. The program exits successfully with a return statement :
 return 0;
}

That’s it. This is how you can easily slice a string in C++. You can play around with the starting index and length to get different results, which helps in understanding the concept more robustly.

c-plus-plus