网站首页 > 文章中心 > 其它

atoi函数c语言

作者:小编 更新时间:2023-08-31 13:10:56 浏览量:218人看过

c语言atoi函数源代码

c语言atoi函数源代码:

int atoi(char n[])

{int i,y=0;

y=y*10+n[i]-'0';

return y;

}

c语言atoi函数求助

判断和你现有的符号判断类似,处理数据的时候不能用isdigit判断?而是要加入a-f的判断

简单的例子

int?atoi(char?s[])

{

int?i,?n,?sign;

for?(i?=?0;?isspace(s[i]);?i++)?/*?skip?white?space?*/

;

if(s[i]?==?'x')/*hex*/

i?++;

for?(n?=?0;?isdigit(s[i])?||?(s[i]='a'?s[i]?=?'f');?i++)

if(isdigit(s[i]))

else

return?n;

sign?=?(s[i]?==?'-')?-1?:?1;

if?(s[i]?==?'+'?||?s[i]?==?'-')?/*?skip?sign?*/

i++;

for?(n?=?0;?isdigit(s[i]);?i++)

n?=?10?*?n?+?(s[i]?-?'0');

return?sign?*?n;

c语言atoi用法介绍?

函数名: atoi

功 能: 把字符串转换成长整型数

用 法: #include stdlib.h

int atoi(const char *nptr);

程序例:

#include stdlib.h

#include stdio.h

int main(void)

int n;

n = atoi(str);

printf("string = %s integer = %d\n", str, n);

return 0;

运行结果是:

c语言atoi函数

跟一行两行没关系, 跟了参数,就会大于1了,第一个参数是程序本身,第二个参数开始才是真正的参数

如何用C语言实现atoi()函数

要善用百度...百度百科就有atoi这个词条,里面有c语言实现的源代码(其实是c++,不过唯一的不同只是它的字符串定义为了const,即常量,表示在函数里不允许改变此字符串内容)

我今天这一节加上注释简单说明一下该源码

int

my_atoi(const

char

*str){

result;

//保存返回结果的

signal

=

//保存符号的,默认正数

//判断第一个数字是否合法

//如果是-,符号变为-1,指针右移

//如果是+,指针右移(都说到这里了大家应该明白指向了第一个数字)

if(*str=='-'||*str=='+'){

if(*str=='-')

-1;

str++;

return

0;//第一个不是+,-或数字,非法返回0

//这里就是转换,是数学的问题就不解释了

result

result*10+(*str++

-'0');

signal*result;

不过这个程序,如果字符串是非法的话,他也会返回直到非法字符之前的数值

以上就是土嘎嘎小编为大家整理的atoi函数c语言相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章