将整数的每个数字提取到数组中?

时间:2016-04-15 15:24:34

标签: c arrays arduino int

我的目标是转换整数:

int = 1234;

到一个数组:

int converted[] = {1,2,3,4};

你可以给我一个提示,我需要对此进行编程吗?

1 个答案:

答案 0 :(得分:1)

假设您的号码是未签名的,您可以尝试以下方法:

unsigned int i = 1234 ;
char array[5] ;

for(int j=0 ; i>0 ; j++, i/=10)
   array[5-j] = (char)(i%10) ;

如果你的整数是有符号的,你需要在数组中添加一个额外的元素,并对代码进行一些小修改以解释符号。

如果你想要的实际上是一个包含数字的ASCII表示的数组(例如1234 - > {' 1',' 2',' 3&# 39;,' 4'}),你应该用

替换上面的最后一行
   array[5-j] = (char)(i%10)+'0' ;