重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
字符串转整数可以有两种方法:
创新互联公司专注于企业营销型网站、网站重做改版、崆峒网站定制设计、自适应品牌网站建设、H5页面制作、成都做商城网站、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为崆峒等各大城市提供网站开发制作服务。
1.使用c语言自带的库函数:atoi。
函数原型:int atoi(const char *nptr);
功能:把字符串转成整型数。
例如:
#include stdlib.h
#include stdio.h
int main(void)
{
int n;
char *str = "12345";
n = atoi(str);
printf("int=%d\n",n);
return 0;
}
/*
输出:
int = 12345
*/
2.可以自己编写一个转换函数:
#include stdio.h
#include stdlib.h
int atoi(char *s)
{
int t=0;
while(*s){
t=t*10+*s-'0';
s++;
}
return(t);
}
int main ()
{
char a[]="12345";
int n = atoi(a);
printf("n=%d ",n);
return 0;
}
/*
输出:
n = 12345
*/
C语言有atoi、atol、atof等库函数,可分别把ASCII编码的字符串转化为int、long、float类型的数字。\x0d\x0a头文件:stdlib.h\x0d\x0a函数原型:int atoi(const char* nptr);\x0d\x0a(另外两个类似)\x0d\x0a\x0d\x0a举个例子:\x0d\x0achar *str="123";\x0d\x0aint num=atoi(str);\x0d\x0a执行后,num的值被初始化为123
功能:数字字符串转整型int,去除高位0。
注意:不要输入超出int范围。
#include stdio.h
#include string.h
int pw10(int m);//计算10次方
int str2int(char *nums);
int main()
{
char nums[]="0103456";
int num;
printf("原字符串:%s\n",nums);
num=str2int(nums);
printf("转成整型后的数字为:%d\n",num);
return 0;
}
int pw10(int m)//计算10次方
{
int i,mu=1;
if(m==0)
return 1;
for(i=0;im;i++)
mu= mu*10;
return mu;
}
int str2int(char *nums)
{
char *p=nums;
int len=strlen(nums),i,m=0,sum=0;
while(1)//去高位0
{
if(*p=='0')
p++;
else
break;
}
for(i=len-1;nums[i]=p;i--)
sum=sum+(nums[i]-'0')*pw10(m++);
return sum;
}