为什么数组值a[1]与数组值1[a]是相等的?为什么会出现这种的奇怪现象?
定义数组a
int a[5] = {0, 1, 2, 3, 4};
数组a[1] = 1[a]
程序运行的结果是它们相等的。客官别急先看推导。
同理a[i] = i[a]
原因
编译器会翻译到数组首地址+偏移地址的方式,所以就支持了该写法,但是一般不会这样用,因为a[i]的方式更加直观。
数组的另类用法
"0123456789abcdef"[value%16]
本文分享自 Qt君 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!