int main()
{
int a=10;
int *b=&a;
int c=*b++;
printf("%d",c);
}
我根据优先级表,该表给出了操作者的http://www.difranco.net/compsci/C_Operator_Precedence_Table.htm优先),修复后知道以下方案产出10.but ++的优先级高于=和*。所以++应该首先评估,然后*。然后为什么程序打印输出为10?关于*(星号)的混乱和++在C
也许你打算试试这个:int c =(* b)++;'(打印10)与'int c = ++(* b);'(打印11)。在这两种情况下,'a'都变为11. – JS1 2014-11-04 20:44:36