为什么在C / C ++数组中a [i] == i [a]?
在这里,我们将看到C或C++的一个惊人技巧。数组下标A[i]也可以写为i[a]。在C/C++中,E1[E2]定义为(*((E1)+(E2)))。编译器在内部执行算术运算以访问数组元素。由于将规则转换为二进制+运算符,因此如果E1是数组对象,而E2是整数,则E1[[E2]表示E1数组中的第E2个元素。因此,可以将A[B]定义为*(A+B),因此B[A]=*(B+A)。所以他们基本上是同一件事。
示例
#include <iostream>
using namespace std;
int main() {
int array[] = {1, 2, 3, 4, 5, 6, 7};
cout << "array[5] is " << array[5] << endl;
cout << "5[array] is " << 5[array];
}输出结果
array[5] is 6 5[array] is 6
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短