一。对++N的研究
对
{
int nTest = 1;
int nTwo = (++nTest)+(++nTest)+.....;
}
对于这种计算 首先++nTest计算的nTest = 2,然后++nTest计算的nTest = 3,在第二次计算时,把第一次计算结果的冲掉,然后相加的4,后面的计算和我们一般的理解一样。
二。对N++的研究
对
{
int nTest = 1;
int nTwo = (nTest++)+(nTest++)+.....;
}
对于这种计算它的二目加法的优先级高。在计算中一直用nTest = 1相加,相加完在计算++
。
三。对N++与++N的混合的研究
{
int nTest = 1;
int nTwo = (nTest++)+(++nTest)+.....;
}
可以看当前两个括号中有++N则计算++N然后计算别的。
四。对++N++的计算
只允许(++N)++的计算可以看出++N是返回值的。而N++不返回值故不能用++(N++)
综上。我们得出N++的优先级的最低,而对于++N优先级颇高,对于前面俩个有++N与N++
的计算中先计算++N,然后计算别的。