gpt4 book ai didi

c++ - 在 C 或 C++ 中取消引用数组时使用小数参数

转载 作者:搜寻专家 更新时间:2023-10-31 00:16:41 25 4
gpt4 key购买 nike

我想问的是,如果我们在 C 或 C++ 中取消引用数组时传递小数会发生什么。我的意思的一个例子:

int arr1[],arr2[];
for (i = 0; i < 5; ++i)
{
if (i % 2 == 0)
arr1[i]=i;
else
arr2[i/2]=i;
}

当编译器看到 arr2[3/2] 时会做什么?

最佳答案

i/2 是整数除法。此除法的结果将再次是一个整数,即向 0 截断的除法结果。 (3/2==1; -5/2==-2;) (作为边请注意,除法和截断都是单一操作:整数除法。大多数编译器将在单个时钟周期内执行此操作。)因此您不会将分数传递给数组索引。

如果您尝试传递可以是分数的数据类型(例如 double),编译器将生成错误。

关于c++ - 在 C 或 C++ 中取消引用数组时使用小数参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15387577/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com