~~~~我的生活,我的点点滴滴!!
先看下面的程序片段
int Arrys[4] = {1,3,22,33};
int *ptr;
ptr = Arrys;
for(i = 0; i < 4; ++ i)
{
printf("%d: %d\n", i+1, Arrys[i]);
}
*ptr++ = Arrys[*ptr];
for(i = 0; i < 4; ++ i)
{
printf("%d: %d\n", i+1, Arrys[i]);
}
运行完后结果为 3 3 22 33
为什么了,我们要考虑 ++ 与 *的结合性,他们优先级是相等的
在C语言中,自增运算符++和指针运算符*的结合性关系为
左++ > * > 右++