c语言string转int
Ⅰ C语言中,字符串怎么转换为int数组
#include<stdio.h>
#include<math.h>
#include<string.h>
#include<conio.h>
voidmain(){
intexc_n(charch[]);intpnum=0;
do{//套用了我之前写的一个转换函数,输出有点勉强。。。(固定输出头0x0...)
charch[10]={0};charspr[2]={0};//分隔输入
printf("inputthestringofnum. 不得不说下,每次输入一个数据,按'x'可以结束程序 ");
scanf("%s",&ch);
printf("0x0%x ",pnum=exc_n(ch));
//printf("%x",pnum);
}while(getch()!='x');
}
//该函数将字符串型数字与整型数字单向转换
intexc_n(charch[]){//,longlnum){
intsize=0;intnum=0;
if(sizeof(ch[0])>0)
size=strlen(ch);inti=0;
while(size>=0){
if(ch[size]>47&&ch[size]<58){num=num+(ch[size]-48)*(int)pow(10,i++);
}
size--;
//
}
returnnum;
}
Ⅱ 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)
}