C++ String(字符串)和 int(整数) 互转

在本教程中,我们将借助示例学习如何将 String(字符串) 和 int(整数) 互转。

C ++string(字符串)转换为int(整数)

我们可以通过多种方式进行string和int转换。最简单的方法是使用C ++ 11中std::stoi()引入的功能。

示例1:使用stoi()将C ++字符串转换为int

#include <iostream>
#include <string>

int main() {

    std::string str = "123";
    int num;

    // 使用stoi()将str1的值存储到x
    num = std::stoi(str);

    std::cout << num;

    return 0;
}

输出结果

123

示例2:使用atoi()将char数组转换为int

我们可以使用std :: atoi()函数将char数组转换为int。  atoi()函数在cstdlib头文件中定义。

#include <iostream>

// atoi()需要 cstdlib
#include <cstdlib>

using namespace std;

int main() {

    // 声明和初始化字符数组
    char str[] = "456";
    int num = std::atoi(str);

   std::cout << "num = " << num;
    
    return 0;
}

输出结果

num = 456

C ++ int(整数)转换为string(字符串)

我们可以使用C ++ 11 std :: to_string()函数将int转换为字符串。 对于旧版本的C ++,我们可以使用std :: stringstream对象。

示例3:使用to_string()将C ++ int转换为字符串

#include <iostream>
#include <string>

using namespace std;

int main() {
    int num = 123;
    
    std::string str = to_string(num);

    std::cout << str;

    return 0;
}

输出结果

123

示例4:使用stringstream将C ++ int转换为字符串

#include <iostream>
#include<string>
#include<sstream> // 为了使用stringstream

using namespace std;

int main() {
    int num = 15;
  
    // 创建stringstream对象ss
    std::stringstream ss;
  
    // 将num的值赋给ss
    ss << num;
  
     //用ss的值初始化字符串变量
     //然后使用str()函数将其转换为字符串格式
    std::string str = ss.str();
    std::cout << str;

    return 0;
}

输出结果

15

要了解有关将字符串转换为float / double的信息,请访问C ++ String转换为float / double