函数深入浅出Linux atoi函数(linuxatoi)
Linux atoi函数是C/C++编程中常用的字符串处理函数,它是”ascii to integer”的缩写。功能是将字符串转换成为一个整数类型。atoi函数会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负号才开始做转换,而在遇到非数字或字符串的结束符结束,内部会检测字符是否有非法字符,如果有,则返回值以0为标准。
例如,有一个变量str,初始值为”123″,在调用atoi函数后,atoi将会把变量str转换成整数123,由于atoi函数返回的结果是一个整数,在使用之前仍需要检验,最好在调用atoi函数前,先检验一次字符串是否可以转换。
下面是atoi函数的一般格式:
int atoi(const char*nptr);
其中,nptr为要转换的字符串指针,当然,也可以使用字符串的另一种表达方法:
int atoi(char *str);
关于atoi函数的使用,下面给出一个例子:
#include
#include
int main(){
char *string = “323”;
int value = atoi(string);
printf(“string is %s, int is %d\n”, string, value);
return 0;
}
在上面的程序中,将会打印出:string is 323, int is 323,由此可见,atoi函数以正确的格式转换字符串并成功返回转换后的整数值。
总结,atoi函数用来将字符串转换成整数,可以用来为计算机中字符类型的数据提供可操作性。但是,由于有可能产生不可预料的结果,应该在使用atoi函数前,先检查字符串的合法性,以防止发生意外结果。