如何将较大数字中从0到9的单个数字放入只包含数字的数组中

How do I put the induvidual digits from 0 to 9 from a bigger number into an array containing only digits

本文关键字:数字 单个 数组 包含      更新时间:2023-10-16

我正试图将BigNumber的所有单个数字推送到一个名为IndividualNumber的数组中。(请参阅下面的代码。(不知怎么的,我尝试使用的代码不起作用。它不会将数字推入数组。有人能解释一下为什么不呢?

int BigNumber = 2639;
array IndividualNumber;
for (int i = 0; i < 10; i++) {
IndividualNumber.push(BigNumber[i]);
}
//IndividualNumber should be [2, 6, 3, 9].

提前谢谢你,祝你今天愉快。

此代码存在一些问题:

  1. BigNumber是一个整数,但您试图像数组或指针一样对其进行索引。得到以10为基数的数字的一种方法是取余数除以10的幂。

  2. 在C++(与Arduino一起使用(中,数组必须用类型和容量声明。例如,声明容量为10个数字的IndividualNumber的正确方法如下:

    int Individual[10];
    
  3. 要设置数组的第i个元素,请使用以下语法:

    IndividualNumber[i] = ...
    

纠正这些错误后,一个可能的解决方案可能看起来像:

int BigNumber = 2639;
int IndividualNumber[10];
int temp = BigNumber;
for (int i = 0; i < 10; i++) {
int digit = temp % 10;             // Remainder on division by 10
temp = temp / 10;
IndividualNumber[i] = digit;
}

这将以相反的顺序在IndividualNumber中存储最多10位数字。