函数atoi()
(ascii to integer
)是把字符串转换成整型数的一个函数,头文件<cstdlib>或<cstdlib>
- 参数类型为char字符串
- atoi()函数会会扫描参数字符串,跳过前面的空白字符(例如空格,tab缩进等),直到遇到数字或者正负符号才开始做转换,遇到非数字或字符串结束时(‘0’)才结束转换,并将结果返回。如果参数不能转换成int或者参数为空字符串,则将返回0。
例子
1.转换类型为char*
#include<iostream>
#include<cstdlib>
using namespace std;
int main() {
int num = 0;
const char* str = "123.56 ";
num = atoi(str);
cout << num;
return 0;
}
输出
123
2.转换类型为char
#include<iostream>
#include<cstdlib>
using namespace std;
int main() {
int num = 0;
char str[] = "2020";
num = atoi(str);
cout << num;
return 0;
}
输出
2020
函数c_str()
atoi
不能直接使用string
变量,c_str
是c++
中string
类 (class) 的 函数,它能把string类的对象里的字符串转换成C中char型变量的字符串
例子
1.转换类型为string
#include<iostream>
#include<cstdlib>
using namespace std;
int main() {
int num = 0;
string str = "2020";
num = atoi(str.c_str());
cout << num;
return 0;
}
输出
2020
评论已关闭