本文目錄一覽:
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;
}
原創文章,作者:CMCL,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/143554.html