C和C#中的加法分配?

时间:2019-07-06 17:56:57

标签: c# c

因此,我正在学习the SplitMix64 generator的代码,并在这里介绍了这一部分:

uint64_t z = (x += 0x9e3779b97f4a7c15);

不是C程序员,我不太了解这种结构。

在x递增之后,z的平均值是否等于x的赋值

x += 0x9e3779b97f4a7c15;
z = x;

或这是否意味着z在x递增之前获得x的值

z = x;
x += 0x9e3779b97f4a7c15;

而且,在C#中会发生相同的行为吗?

1 个答案:

答案 0 :(得分:1)

x递增后,

z获得x的赋值 。这样想吧:

z = (x = x + 0x9e3779b97f4a7c15);

赋值的返回值始终是赋值完成后赋值左侧的值。