C++将字符串部分转换成整形数
时间: 2024-09-24 16:18:32 浏览: 40
在C++中,将字符串转换为整数可以使用`std::stoi()`函数,这是 `<string>` 库的一部分。这个函数接收一个字符串作为输入,并尝试将其解析为整数。如果字符串能成功转换,它会返回对应的整数值;如果字符串无法表示一个有效的整数,或者包含非法字符,那么会抛出一个异常,如`std::invalid_argument`或`std::out_of_range`。
例如:
```cpp
#include <iostream>
#include <string>
int main() {
std::string str = "12345";
int num;
try {
num = std::stoi(str);
std::cout << "Converted number: " << num << std::endl;
} catch (const std::invalid_argument& e) {
std::cerr << "Invalid argument: " << e.what() << std::endl;
} catch (const std::out_of_range& e) {
std::cerr << "Number out of range: " << e.what() << std::endl;
}
return 0;
}
```
在这个例子中,`str`被转换为整数`12345`,但如果字符串不是数字或者太长以至于无法表示为整数,就会捕获并处理异常。
阅读全文