C语言里++是右往左算,a++*a为什么不算++呢?、好奇怪.a=3时,结果是9、右结合性去了哪里?a++*a , 当 a=3时,结果是9、那右结合性去了哪里?为什么算结果的是吧不加1?
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/29 00:58:51
![C语言里++是右往左算,a++*a为什么不算++呢?、好奇怪.a=3时,结果是9、右结合性去了哪里?a++*a , 当 a=3时,结果是9、那右结合性去了哪里?为什么算结果的是吧不加1?](/uploads/image/z/11616120-0-0.jpg?t=C%E8%AF%AD%E8%A8%80%E9%87%8C%2B%2B%E6%98%AF%E5%8F%B3%E5%BE%80%E5%B7%A6%E7%AE%97%2Ca%2B%2B%2Aa%E4%B8%BA%E4%BB%80%E4%B9%88%E4%B8%8D%E7%AE%97%2B%2B%E5%91%A2%3F%E3%80%81%E5%A5%BD%E5%A5%87%E6%80%AA.a%3D3%E6%97%B6%2C%E7%BB%93%E6%9E%9C%E6%98%AF9%E3%80%81%E5%8F%B3%E7%BB%93%E5%90%88%E6%80%A7%E5%8E%BB%E4%BA%86%E5%93%AA%E9%87%8C%3Fa%2B%2B%2Aa+++++%2C++++++++++%E5%BD%93+a%3D3%E6%97%B6%2C%E7%BB%93%E6%9E%9C%E6%98%AF9%E3%80%81%E9%82%A3%E5%8F%B3%E7%BB%93%E5%90%88%E6%80%A7%E5%8E%BB%E4%BA%86%E5%93%AA%E9%87%8C%3F%E4%B8%BA%E4%BB%80%E4%B9%88%E7%AE%97%E7%BB%93%E6%9E%9C%E7%9A%84%E6%98%AF%E5%90%A7%E4%B8%8D%E5%8A%A01%3F)
C语言里++是右往左算,a++*a为什么不算++呢?、好奇怪.a=3时,结果是9、右结合性去了哪里?a++*a , 当 a=3时,结果是9、那右结合性去了哪里?为什么算结果的是吧不加1?
C语言里++是右往左算,a++*a为什么不算++呢?、好奇怪.a=3时,结果是9、右结合性去了哪里?
a++*a , 当 a=3时,结果是9、
那右结合性去了哪里?为什么算结果的是吧不加1?
C语言里++是右往左算,a++*a为什么不算++呢?、好奇怪.a=3时,结果是9、右结合性去了哪里?a++*a , 当 a=3时,结果是9、那右结合性去了哪里?为什么算结果的是吧不加1?
在表达式中,前缀++、--或后缀++,--都属于“附加效应”(或副作用),这些附加效应何时实现,在ANSI C中并没有明确规定,只是规定,该表达式计算完成(时间点)后,附加效应也完成了,所以有附加效应的表达式的移植性是没有的.为了增强可移植性,建议在必要的地方加括号,比如
(a++)* a,或 (++a)*a