atoi()函数与c_str()函数
2020 年 08 月 18 日 290 184 字 暂无评论

函数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_strc++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

版权属于:zfh

本文链接:http://zfhblog.com/index.php/archives/113/



评论已关闭