本文目录一览:
C语言字符串转化int
把printf("%s\n",m);
改成
for(j=0;ji;j++)
{
printf("%d\n",m[j]);
}
字符串数字转为int数,c语言来写?
Copyright © 1999-2020, CSDN.NET, All Rights Reserved
搜索博文/帖子/用户
登录
c字符串转化为int,ip拆分 原创
尼古拉斯*妥妥
450次阅读 2019-06-12
关注
int main(){
char* str="123";
// 算法,前面的数 num*10+后面的数
int i=0;
int num1=0;
while(str[i]!='\0'){
num1= num1*10+ (str[i]-'0');
i++;
}
printf("%d\n",num1);
// 字符串转化为int类型函数
int num2= atoi(str);
printf("num2=%d\n",num2);
// Ip 拆分
char* ip="192.168.1.42";
int a,b,c,d;
sscanf(ip,"%d.%d.%d.%d",a,b,c,d);
printf("a=%d b=%d c=%d d=%d",a,b,c,d);
}
结果:
123
num2=123
a=192 b=168 c=1 d=42
c语言 字符型转换成整型
字符串转成整型可以使用atoi函数。
函数原型:int atoi(const char *nptr);
功能:把字符串转换成整型数。
参数nptr字符串,如果第一个非空格字符存在,是数字或者正负号则开始做类型转换,之后检测到非数字(包括结束符 \0) 字符时停止转换,返回整型数。否则,返回零。
扩展资料:
整型转换成字符型
使用itoa函数。原型:extern char *itoa(int i);
参考代码:
#includestdio.h
#includestdlib.h
int main()
{
int a=125;
char b[50];
printf("%s\n",itoa(a,b,10));//把10进制的125转成字符并输出。
return 0;
}
/*
c怎么将string转换成int
首先感谢几位知乎老兄指教,这篇文章发过一次,题目为C++ atoi关键字,确实是自己错了,敬师不到,学艺不精,谢谢各位指教。因为工作需要,学起C++之所以在知乎发文章,只是想记录一下自己的学习笔记,给自己点儿结果反馈,促进学习。有些地方有待斟酌甚至错误,以免误人子弟,请各位多指教,即使是嘲笑和鄙视鄙人也很能接受,并且万分感谢!
作用
atoi()函数将数字格式的字符串转换为整数类型。例如,将字符串1253124127转换成数字1253124127。
注意
首要注意
atoi函数可以转化如下这种字符串 1fdafhdjfhkas
关于参数的注意事项
,atoi()函数的参数是要转换的字符串。该字符串的格式为
[空格][符号][数字]
其中,空格可以是键盘中的空格字符或者是Tab字符;符号可以是表示正数的“+”,也可以是表示负数的“-”;数字即为数字字符串。所以,atoi()函数参数可以是
+123
-456
需要注意的是,空格和“+”可以省略。所以,atoi()函数参数还可以是
123
-456
关于返回值的注意事项
如果atoi()函数转换成功,则该函数的返回值是转换后的整型。如果atoi()函数转换失败,例如要转换的类型超过了int表示的范围,如果要转换的是正数,则返回INT_MAX(2147483647),如果要转换的是负数,则返回INT_MIN(-2147483648)。代码如下所示
调用方法
//该函数的格式为
int atoi(const char* str)
//其中,参数str是要转换的字符串,返回值是转换后的整数。
int main(){
const char* str1="12493265713256"
const char* str2="8fdafhdjfhkas"
int outNm=atoi(str1)
}
C语言中,字符串怎么转换为int数组?
#includestdio.h
#includemath.h
#includestring.h
#includeconio.h
void main(){
int exc_n(char ch[]);int pnum=0;
do{//套用了我之前写的一个转换函数,输出有点勉强。。。(固定输出头0x0...)
char ch[10]={0};char spr[2]={0};//分隔输入
printf("input the string of num.\n不得不说下,每次输入一个数据,按'x'可以结束程序\n");
scanf("%s",ch);
printf("0x0%x\n",pnum=exc_n(ch));
//printf("%x",pnum);
}while(getch()!='x');
}
//该函数将字符串型数字与整型数字单向转换
int exc_n(char ch[]){//,long lnum){
int size=0;int num=0;
if(sizeof(ch[0])0)
size=strlen(ch);int i=0;
while(size=0){
if(ch[size]47ch[size]58){num=num+(ch[size]-48)*(int)pow(10,i++);
}
size--;
//
}
return num;
}