#include <stdio.h>
int main(int argc, const char *argv[])
{
int does[] = {1, 3, 2, 1000};
printf("服用 %i 毫克的药物\n", 3[does]);
return 0;
}
# 输出 服用 1000 毫克的药物
- 3[does] 这种写法不违反命名约定吗?
- does[3] == 3[does] 为什么会相等?
#include <stdio.h>
int main(int argc, const char *argv[])
{
int does[] = {1, 3, 2, 1000};
printf("服用 %i 毫克的药物\n", 3[does]);
return 0;
}
# 输出 服用 1000 毫克的药物
回去看书,其实写成a[b]其实就是(a+b),于是b[a],也就是(b+a)也并没有什么错误。访问数组的元素其实就是根据地址+位移这样=。=