C语言的一个表达式看不懂

C语言的一个表达式看不懂新手 求大神教教
2025-06-26 10:35:53
推荐回答(2个)
回答1:

这种程序的写法,可读性实在太差,且随不同的编译系统(C语言系统)而有不同的结果。所以,一般不建议深究此类问题。

在有的C编译系统中,上面两段程序的结果是不一样的:

在前一段中,(y--)后y的值马上就减了1,然后再作后面的计算;

而后一段则是全部算完后,y再减1。

其实在这里,括号的加与不加是完全一样的。若把y--移到后面,分号是必须要加的,否则不能通过编译。

回答2:

y--其实就等于在下一条语句中y=y-1。
他是C语言中的自减符号相对应的还有:
y++ ++y,--y。