atoi(ASCII to integer)函数它把字符串中的字符(第一个字符必须为数字)转换为int型数,只处理十进制数。如果数值太大,超出了范围,atoi函数就返回LONG_MAX或者LONG_MIN。
atoi函数用法:
int atoi (const char *str);
atoi函数示例:
int num;
num=atoi(“12345”);
运行结果:
num的值为12345
实际上atoi函数的核心需要遍历字符串里的每个字符,也就是遍历字符串中的每一位数字,将其拆分出来,然后每位数字的值*10的n次方,然后进行累加,最后得到的就是整数值。具体的实现代码如下:
int atoi(const char* str)
{
int result = 0; //最终返回的结果
int minus = 0; // 用来记录是否为负数
int pos = 0; // 用来记录是否有正负号,如果有且有数字,则pos=1
// 遍历计算字符串
while(*str != ‘\0’)
{
if(*str == ‘-‘ && pos == 0)
// 如果是负号,则把minus = -1;表示此数为负数
minus = -1;
else if(‘0’
{
// *str乘以10的n次方 ( n为字符串的当前位下标 )
result = result*10 + (*str – ‘0’);
pos = 1; //记录已经有数字
}
else if(pos == 0)
// 如果非数字非负号,直接返回
return 0;
str++;
}
return minus == -1 ? -result : result;
}
总结后,可以看出,linux函数atoi的功能是把字符串中的字符转换为int型数,使用这个函数把字符串转化为整型数数字可以大大减少我们编程的工作量,以及节省空间和时间上的浪费。
成都创新互联建站主营:成都网站建设、网站维护、网站改版的网站建设公司,提供成都网站制作、成都网站建设、成都网站推广、成都网站优化seo、响应式移动网站开发制作等网站服务。
本文名称:Linux函数atoi的功能简介(linuxatoi)
网址分享:http://www.shufengxianlan.com/qtweb/news8/439758.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联