++i是输出加1之后的i,i++是先输出i再加1,第二次输出后i=8,然后i++,先输出8再加一,所以第三行输出8,此时i=9,第四行先输出9再减一,此时i=8,第五六行是因为前面的-i的减号解析的是负号,所以先输出-8然后i加一得9,注意是i加一不是-i,第六行先输出-i也就是-9,i再减一
第一行:++i,前自增,printf 采用自增后的值,自增后i=9,所以输出9,此时i=9;
第二行:--i,前自减,printf 采用自减后的值,自减后i=8,所以输出8,此时i=8;
第三行:i++,后自增,自增后i=9,但printf 采用自增前的值,所以输出8,此时i=9;
第二行:i--,后自减,自减后i=8,但printf 采用自减前的值,所以输出9,此时i=8;
第二行:-i++,先进行后自增运算,自增后i=9,但相反数符号采用自增前的值,所以输出-8,此时i=9;
第二行:-i--,先进行后自减运算,自减后i=8,但相反数符号采用自减前的值,所以输出-9,此时i=8。