Convert a string to an integer using a stringstream

Using a const char*

#include <sstream>
#include <iostream>  //used for cout
int main()
{
    const char* str = "12345";
    std::stringstream ss( str );
    int i;
    ss >> i;
    if (ss.fail())
    {
        // Error
    }
    else
    {
        std::cout << "The integer value is: " << i;
    }
    return 0;
}

Using a C++ style string

#include <sstream>
#include <iostream>  //used for cout
int main()
{
    std::string str = "12345";
    std::istringstream ss(str);
    int i;
    ss >> i;
    if (ss.fail())
    {
        // Error
    }
    else
    {
        std::cout << "The integer value is: " << i;
    }
    return 0;
}

This method of converting strings to integers is type safe.
You can use either istringstream or stringstream in these examples.