C语言字符串转成INT型数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言字符串转成INT型数组相关的知识,希望对你有一定的参考价值。

我有一个字符串 ch="1 3 4 6",怎么把它弄成int型的数组sz[]
sz[1]是1,sz[2]是空格,sz[3]是3,sz[4]是空格,sz[5]是4……求C语言代码,别给C++的。

代码://讲src当中的数字字符转换成数字并存到des当中
//返回数字个数
int Change(int* des, const char* src)

int i, ret = 0, len = strlen(src);
for(i=0; i<len; i++)

if(\'0\' <= src[i] && \'9\' >= src[i])

des[ret++] = src[i]-\'0\';


return ret;
void main()

printf("Please input a string: ");
char str[64] = 0;
gets(str); //动态创建一个整形数组用于存放结果
int* ret = (int*)malloc(strlen(str)*sizeof(int));
int len = Change(ret, str); //显示结果
int i;
for(i=0; i<len; i++)

printf("%d\\t", ret[i]);

printf("\\n"); //释放内存
free(ret);
参考技术A 先把字符串ch存放在字符型数组中再跟据你的要求把字符型数组中的数据存放在整型数组中不过存放的是相当字符的ASCII码值,如果想用数值而不是数字,需减30即可 参考技术B int 型的数组没有空格

以上是关于C语言字符串转成INT型数组的主要内容,如果未能解决你的问题,请参考以下文章

C语言中关于字符串转整型?

C语言中怎么把Int型转成字符型?

如何将table转换为double型数组?

请问C语言中如何将int转换为float

c语言如何将数组转成字符串

C语言中如何把int型数组转化为字符串?