C语言中如何将字符串转化为整型数,注意负数处理方法

如题所述

#include <stdio.h>
#include <string.h>
#include <assert.h>
int atoi(char *s)
{
assert(s && strlen(s));
int flag = 1;
int ret = 0;
while(*s=='-'&&++s&&(flag=-1)==1 || *s!='\0')
{
if(*s>='0' && *s<='9')
{
ret = 10*ret + (*s++-'0');
}
else
{
++s;
}
}
return flag*ret;
}
int main(int argc, char **argv)
{
printf("-->%d\n", atoi(argv[1]));
return 0;
}

温馨提示:答案为网友推荐,仅供参考
相似回答