当前位置:首页 » 编程语言 » 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