當前位置:首頁 » 編程語言 » c語言字元數組轉int數組
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言字元數組轉int數組

發布時間: 2022-04-12 11:17:51

c語言 字元數組轉換整型數組的演算法

參考代碼:

#include <stdio.h>
#include <string.h>

int main()
{
char str[]="123 12 1";
char *p;
p=strtok(str, " ");
printf("%s ", p);
while (p=strtok(NULL, " "))
{
printf("%s ", p);
}
return 0;
}
輸出效果:

㈡ C語言字元串轉成INT型數組

#include<stdio.h>

int main()

{

int i,a[200];

char s[200];

gets(s);

for(i=0;s[i];i++)

a[i]=s[i];

a[i]=0;

for(i=0;a[i];i++)

printf("%d ",a[i]);

printf(" ");

getch();

return 0;

}

㈢ c語言中,如何將字元串數組中的52提取出來,並轉換為int類型

你的題目和文本好像不一樣,兩個都說一下吧

先說簡單的,數組轉成字元串只要用sprintf函數就可以了,在string.h中,用法和printf很類似,只要在前面加上你要生成的字元串指針就可以了

int sprintf ( char * str, const char * format, ... );

字元串轉換成int,首先你要判斷是不是數字,將數字提取到一個字元串中,別忘了\0

之後在stdlib.h中有一個庫函數atoi()

int atoi ( const char * str );

把建立的字元數組傳給這個函數就可以了.

此外新版C庫中還有一個strtod函數可以做到這一點

long int strtol ( const char * str, char ** endptr, int base );

只要傳開始指針就好,第二個指針是用來指示轉換到什麼地方停止的。
比如你的情況就可以這么傳

char* close;
strtol(string[1],&close,10);

之後close應該指向C

㈣ 用c語言把字元型數組 轉換成整形數組

感覺你的表述有問題

charstr[]={11,12,13,14,15,16,17,18,19,20};

是個什麼意思你明白嗎?他的輸出是這樣的

㈤ 用C語言進行字元串到數組的轉化

#include <stdio.h>
#include <string.h>//為strlen()函數提抄供原型
int main()
{ char ch[100];
int i,length;
int n_number=0,m_number=0;
printf("請輸入字元串: ");
gets(ch);//獲取輸入,並存入數組中
length=strlen(ch);//計算輸入字元串的長度
for(i=0;i<length;i++)
{
if(ch[i]>='0'&&ch[i]<='9')//判斷是否為數字
{
n_number++;
}
if(ch[i]>='a'&&ch[i]<='z'||ch[i]>='A'&&ch[i]<='Z')//判斷是否為字母
{
m_number++;
}
}
printf("輸入的字元串為: ");
puts(ch);//輸出存入數組的字元串
printf("字元串中數字的個數=%d,字母的個數=%d\n",n_number,m_number);
return 0;
}

㈥ C語言中怎樣最好地從標准輸入流中獲取字元串,並轉換為int數組


#include<stdio.h>
#include<stdlib.h>
intmain(){
inti;
charbuffer[256];
printf("Enteranumber:");
fgets(buffer,256,stdin);
i=atoi(buffer);
printf("Thevalueenteredis%d.",i);
system("pause");
return0;
}

其實你的需求很簡單只要是用atoi函數就可以輕松的轉換string到數組了,我用以上的一小段代碼就可以解釋明白你的疑惑。沒看明白在問我吧!

執行結果:
Enter a number: 233cyuyan
The value entered is 233.

函數說明如下:

頭文件:#include<stdlib.h>

atoi()函數用來將字元串轉換成整數(int),其原型為:
intatoi(constchar*str);

【函數說明】atoi()函數會掃描參數str字元串,跳過前面的空白字元(例如空格,tab縮進等,可以通過函數來檢測),直到遇上數字或正負符號才開始做轉換,而再遇到非數字或字元串結束時('')才結束轉換,並將結果返回。

【返回值】返回轉換後的整型數;如果str不能轉換成int或者str為空字元串,那麼將返回0

㈦ C語言字元串轉化int

把printf("%s\n",m);
改成
for(j=0;j<i;j++)
{
printf("%d\n",m[j]);
}

㈧ 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語言 二進制的byte數組轉化為int數組

如果byte裡面保存的是數值,那麼你可以調整順序(低位在前,高位在後)之後,通過memcpy直接轉換:
memcpy(&intVar, byteArray, sizeof(int));
如果byte保存的是數字的字元,那麼你需要進行轉換,具體如何轉換,要看byte裡面保存的是什麼格式了。

㈩ 字元串數字轉為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