问题描述:
main()
{
int i,j,m,n;
i=8;j=10;
m=++i;n=j++;
printf("%d,%d,%d,%d",i,j,m,n);
}
就是没搞懂j为什么等11
难道n=j++与j++有区别(只针对j的值),我想j的值在二次使用时才等于11吧
问题解答:
i=9;j=11;m=9;n=10
你可以运行试试看.
首先考虑++在前的比=优先级高,++在后则比+优先级低.所以i先自加加等于9,再赋值给m,故m=9;而j先赋值给n,等于10,然后j自加加等于11
9,11,9,10