printf("%d,%d\n",k,++k)与 printf("%d,%d\n",k,k++)

int k=8;printf("%d,%d\n",k,++k)与 printf("%d,%d\n",k,k++)为什么一个输出的是9,9 另一个是8,8

第一个

int k=8;
printf("%d,%d\n",k,++k);
//-------------
int k=8;
k = k+1;
printf("%d,%d\n",k,k);

第二个

int k=8;
printf("%d,%d\n",k,k++);
//-------------
int k=8;
printf("%d,%d\n",k,k);
k = k+1;

k++与++k的区别:
遵循就近原则
m1=k++即为m1=k,k=k+1;
m2=++k即为k=k+1,m2=k,
当k=8时,m1=8,m2=9

看看++前置和后置的区别就明白了

这个是日经了,日日讲,月月讲,++i与i++区别

 operator++()前缀++ ,即俗气的i++,返回i+1
operator++(int)后缀++,同样俗气的++i,i+=1并返回旧值