C#的后自减为什么没有意义了

为什么C#里面
int x = 24;
x += x--;

int x = 24;
x += x;
算出来的值都是48啊
这个后自减的意义是啥呢

1.先赋值,在-
2.不建议研究,因为除非项目完成,最后极限优化,没人会写这类代码
3. 不建议研究,因为如何解释语法是编译器的事情,不同编译器对同一个AST语法树不同,这不是技术。只是当初些编译器的人觉得应该如何就如何,就如同上面有人给你演示了C++编译器认为是:24+23,而编译器认为是24+24;
所以,研究这块基本意义,茴香豆应该是这个茴,但是没啥意义。将进酒应该读qiang,依旧没啥普适意义。除了喝酒吹牛的时候可以说说,其他时候这种知识就是纯粹浪费脑容量

跑了一下,是47

img

#include<stdio.h>
#include<stdlib.h>

int main()
{
    int x = 24;
    x += x--;
    printf("%d\n",x);
    return 0;
}

你试试把x--变成,--x,前面是先执行运算后自减,后面的是先自减后运算

执行顺序:从左到右
先x += x再x--,当然没效果喽

是的,对以你的示例。这个后自减 毫无意义,只是混淆视听
因为你雍错的场合