初始学C语言时,学到ASCII码以及string之后,经常碰到将char或者string类型,但是想表达数据的一些变量或常量,这个时候要把它作为int类型的数据来使用得花费一点功夫。刷题看到某一官方题解时,我发现atoi是一个贼好用的函数。在此做点小笔记。
atoi (表示 ascii to integer)是把字符串转换成整型数的一个函数。
函数原型:int atoi(const char *str);头文件:#include <stdlib.h>函数会扫描参数 nptr字符串,跳过前面的空白字符(例如空格,tab缩进)等,可以通过isspace( )函数来检测),直到遇上数字或正负符号才开始做转换,而在遇到非数字或字符串结束符(‘ ’)才结束转换,并将结果返回。如果 nptr不能转换成 int 或者 nptr为空字符串,那么将返回 0 [1] 。
注意:该函数只能将字符串转化为正确的整型值,而不能转化为带有小数点的数值。这个时候来介绍一下atof函数
atof(将字串转换成浮点型数)
函数原型: double atof(const char *nptr);头文件: #include <stdlib.h>函数说明 atof()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时(’ ’)才结束转换,并将结果返回。参数nptr字符串可包含正负号、小数点或E(e)来表示指数部分,如123.456或123e-2。
相关函数还有atol,strtod,strtol,strtoul