这跟运算符没关系,跟printf的执行顺序有关系printf里多个参数,从最右边的开始计算表达式,依次计算出结果之后先缓存,最后再从左到右的次序替换到字符串里输出但是这在不同的IDE里执行顺序是会变的,所以实际开发的时候要竭力避免这种坑人的写法