c语言++放在前面和后面的区别分析

2020-01-06 14:03:18王冬梅
在C语言中,前缀自增(++i)和后缀自增(i++)操作符并不是同一个操作符,前缀自增操作符的优先级高于后缀自增,同时得到的结果并不完全一致,因此需要区分    

咱们先看第一个

c语言++放在前面和后面的区别分析

i被赋值0,i++(后++)并没有输出1。

c语言++放在前面和后面的区别分析

现在i被赋值0,++i,也就是前++后输出了1。

c语言++放在前面和后面的区别分析

i被赋值0,前++ 的话,就是自身先加1 就自身赋值变成1 ,后面的i的值都是1了。

c语言++放在前面和后面的区别分析

i被赋值0,先是后++,后++意思是 自己先被赋值,赋值完后等本语句结束后就自己加1了。第一个printf输出的是i开始被赋的值0, 第一个printf之后就是一个(;)分号,分号意思是这个语句的结束。 这条语句结束,这时候i就偷偷的自己加上1了,第2个printf输出的就是上一个语句处理后i的值了。 

c语言++放在前面和后面的区别分析

i被赋值0,i++ ; 这是一条语句。因为有分号。 我们说 后加加 就是 先自己赋值,然后等待本语句结束时自己再加1。 i++ ; 执行的结果就是 0+1=1了。printf只管输出 i的值了。