首先定义一个数组:int ArrayName[10];
一般来说要引用数组的元素是采用ArrayName[num]的样式,如a[5]引用序号为5的元素;
但ArrayName数组名和num索引值的位置是可以互换的,也就是可以采用num[ArrayName]的形式,如5[a]也是引用序号为5的元素。
居然还可以这样引用数组!先感叹一下~
深层原因在于,数组的引用实际上是指针的操作,引用数组ArrayName的第num个元素的工作实际是下式*(ArrayName + num)(特别注意:*(ArrayName + num) ==*(num + ArrayName)),因为数据引用太过常见,因而简写为ArrayName[num]这种形式,编译器(或者是预处理器???)只是将这种简写展开而已,展开后的ArrayName[num]与num[ArrayName]是完全相等的。