我希望在Pascal中进行同时变量赋值。pascal中的同时变量赋值
据我所知,这是不可能的。在这个问题上搜索,我可以看到很多编程语言都实现了这一点,但是我无法在Pascal中找到如何去做。
例如,在Python我可以这样做:
(x, y) = (y, x)
在Pascal中,我需要一个额外的变量来保存x的值它去掉,这样的事情:
bubble := x;
x := y;
y := bubble;
那么,Pascal中是否存在同时赋值,还是我应该将代码重写为类似上面的泡沫物?
我不仅要做掉掉;有时我必须做这样的事情:
(x,y) = (x+1,y+x)
可以像下面这样做吗?
old_x := x;
old_y := y;
x := x + 1; // maybe x := old_x + 1;
y := old_y + old_x;
您在这里寻找的术语是“交换” - 您想交换“x”和“y”的值。 – 2010-07-01 01:45:00
虽然这四个陈述都可以,但我想我只是在两个方面做:'y:= y + x; x:= x + 1;' – 2010-07-02 05:34:53