atoi 和 stoi用法
时间: 2024-06-14 09:03:21 浏览: 161
atoi和itoa函数的实现方法
atoi和stoi都是将字符串转换为整数的函数,但是它们有以下几点不同:
1. 函数参数不同:stoi的参数是const string*,atoi的参数是const char*。可以直接将char作为stoi函数的参数,因为string类存在相应的构造函数。但不能将string作为atoi函数的参数,如果一定要用,先将string转化为char。
2. 范围检测不同:stoi有范围检测,超过则报错;atoi没有范围检测,超过则返回上界或者下界。
3. 违法输入处理不同:stoi会直接报错,atoi会返回0(此处的违法指的是字符串从头部开始不存在一个可转换的整数序列,比如下面的几个例子)。
以下是两个函数的使用方法:
1. atoi函数的使用方法:
```c++
#include <cstdlib>
#include <iostream>
using namespace std;
int main() {
int a = atoi("1234");
cout << a << endl; // 输出:1234
return 0;
}
```
2. stoi函数的使用方法:
```c++
#include <string>
#include <iostream>
using namespace std;
int main() {
string str = "1234";
int a = stoi(str);
cout << a << endl; // 输出:1234
return 0;
}
```
阅读全文