Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C 将整数的每个数字提取到数组中?_C_Arrays_Arduino_Int - Fatal编程技术网

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

C 将整数的每个数字提取到数组中?,c,arrays,arduino,int,C,Arrays,Arduino,Int,我的目标是转换一个整数: int = 1234; 对数组执行以下操作: int converted[] = {1,2,3,4}; 你能告诉我编程这个需要什么吗?假设你的号码没有签名,你可以尝试以下方法: unsigned int i = 1234 ; char array[5] ; for(int j=0 ; i>0 ; j++, i/=10) array[5-j] = (char)(i%10) ; 如果整数是有符号的,则需要在数组中添加一个额外的元素,并对代码进行一些小的修

我的目标是转换一个整数:

int = 1234;
对数组执行以下操作:

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

你能告诉我编程这个需要什么吗?

假设你的号码没有签名,你可以尝试以下方法:

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'、'4'),则应将上面的最后一行替换为

   array[5-j] = (char)(i%10)+'0' ;

@鲁克斯:很接近,但正好相反。应该给OP一些想法。大致来说:用
itoa
sprintf
将其转换为字符串,然后扫描字符串。