c - "copy"数组元素按顺序变为 "int"? C

标签 c arrays integer

这可能是一个非常简单的问题,但我需要将 array[0] 和 array[1] 中的两个 int 值复制到一个整数中。

例如,如果 array[0]=1 且 array[1]=6,我需要整数等于“16”。 数组中的任何元素的范围都是从 0 到 9。

我有什么机会? 非常感谢!

最佳答案

数组[0]总是代表10位,而数组[1]总是代表1位吗? array[0] 或 array[1] 的值是否会大于 9 或小于 0?是否会有数组[2]或数组[3]来表示3位或4位数字?

如果上述问题的答案是"is"、“否”、“否”,那么答案不就是简单的算术吗?

int result = (array[0] * 10) + array[1];

如果数据未预先进行范围检查,则您需要添加该步骤。即使数据已预先进行范围检查,您也应该考虑添加该步骤以确保更加确定。

'10' 在上面的例子中也是一个魔数(Magic Number)。明智的做法是不要硬编码 10,而是根据数组的大小来确定它。考虑有一个 array[2] 的情况。 。 。数组[n]。然后呢?

关于c - "copy"数组元素按顺序变为 "int"? C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13445222/

相关文章:

c - posix fork() & win32 CreateProcess() 之后的子进程名称是什么?

c - 根据用户输入声明数组

PHP 从字符串中获取整数

indexing - 使用带有 float 的 Pandas reindex : interpolation

c - 数组从一开始就不为空

c - fwprintf 将回车符放在换行符之前

连接两个 .y 输入

javascript - 当被过滤的数组包含 JSON 数据时,为什么我会收到 'cannot read property ' filter' of undefined' ?

c - 使用 getch 在 C 中进行简单游戏 - 段错误问题?

php - 可以将一个变量乘以一个变量来检查它是否真的是 php 中的一个数字吗?