#include <iostream>
#include <string>
#include <cstdlib> // for atoi
int main() {
std::string str = "12345";
int num;
// 使用 C 风格的函数 atoi 将字符串转换为整数
num = atoi(str.c_str());
std::cout << "Using atoi: " << num << std::endl;
// 使用 C++11 的 stoi 函数将字符串转换为整数
try {
num = std::stoi(str);
std::cout << "Using stoi: " << num << std::endl;
} catch (const std::invalid_argument& e) {
std::cerr << "Invalid argument: " << e.what() << '\n';
} catch (const std::out_of_range& e) {
std::cerr << "Out of range: " << e.what() << '\n';
}
return 0;
}
atoi
函数:
atoi
是 C 标准库中的一个函数,用于将 C 风格字符串(以空字符结尾的字符数组)转换为整数。std::stoi
函数:
std::stoi
是 C++11 引入的一个更安全的函数,用于将 std::string
类型的字符串转换为整数。std::invalid_argument
异常;如果数值超出了 int
类型的范围,则会抛出 std::out_of_range
异常。try-catch
块来捕获这些异常并进行处理。以上代码展示了如何使用这两种方法将字符串转换为整数,并且提供了相应的异常处理机制。
上一篇:c++多线程实现的四种方式
下一篇:c++ *
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站