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
将其转换为字符串,然后扫描字符串。