c自增自减的问题.问i,j,m,n的结果

发布时间:2024-11-08 00:48 发布:上海旅游网

问题描述:

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

热点新闻