A Practical Approach to String Reversal in C+

It is a C++ code for the string reversal program with detailed documentation provided separately. The code itself is presented within a code block.

#include <iostream>

using namespace std;

int len(string s) {
    int i = 0;
    while (s[i] != '\0') {
        i++;
    }
    return i;
}

string reverseString(int length, string s) {
    // Create a new string to hold the reversed version
    string y = "";

    // Reverse the string by appending characters from the end
    for (int i = length - 1; i >= 0; i--) {
        y += s[i];  // Add characters in reverse order
    }

    // Print the original and reversed strings
    cout << "Original string: " << s << endl;
    cout << "Reversed string: " << y << endl;

    return y;  // Return the reversed string
}

int main() {
    string s = "hello world";           // Original string
    int length = len(s);                // Get the length of the string
    reverseString(length, s);           // Call the reverse function

    return 0;                           // Successful execution
}

Documentation for the Code

This C++ program reverses a given string and displays both the original and the reversed versions. It demonstrates basic string manipulation techniques, including calculating string length and reversing a string.

Key Components

  1. Function len:

    • Purpose: Calculates the length of a string manually by iterating through its characters until the null terminator ('\0') is encountered.

    • Parameters:

      • string s: The input string.
    • Returns:

      • An integer representing the length of the string.
  2. Function reverseString:

    • Purpose: Reverses the input string and constructs a new string by appending characters in reverse order.

    • Parameters:

      • int length: The length of the input string.

      • string s: The input string to be reversed.

    • Returns:

      • The reversed string.
  3. Function main:

    • Purpose: The entry point of the program.

    • Execution:

      • Initializes a string (s) with the value "hello world".

      • Computes its length using the len function.

      • Calls the reverseString function to print the original and reversed strings.

Usage

To run the program:

  1. Compile the code using a C++ compiler (e.g., g++).

  2. Execute the generated binary to see the output of the original and reversed strings.

Output

When executed, the program will display:

Original string: hello world
Reversed string: dlrow olleh

Conclusion

This program serves as a fundamental example of string manipulation in C++. It effectively illustrates how to calculate string lengths and reverse strings while providing clear output for verification.