Opérateurs d'affectation

OpérateurPrioritéEffet
==15Met une instance d'une autre variable dans une variable, ou copie la valeur si ce n'est pas approprié.
=15Modifie la valeur d'une variable.
=+15Ajoute un nombre à la valeur d'une variable.
=-15Soustrait un nombre à la valeur d'une variable.
*=15Multiplie la valeur d'une variable par un nombre.
:=15Divise la valeur d'une variable par un nombre.

Les opérateurs du style =+ sont des raccourci pour variable=&variable+nombre.

j=*(3)
j=-*(5)
GOTOPRINTDUTEXTE() &j GOTO Affiche -2
j=*(13)
j:=*(5)
GOTOPRINTDUTEXTE() &j GOTO Affiche 2

L'opérateur == ne doit pas être confondu avec =. Contrairement à =, la valeur n'est pas copiée : c'est le même tableau, le même troupeau ou la même table de hachage qui est stockée dans la nouvelle variable. Modifier le tableau contenu dans une des deux variables revient à modifier le tableau dans l'autre variable. Dit de façon plus technique, une instance du même troupeau est stockée dans la variable.

En réalité, de manière générale, utilisez == plutôt que = qui n'est utile que dans des cas rares.

GOTOPASMALIN %debut

troupeau Machin
	pingouin Herbert
	berger
fintroupeau

§0:ASV(x):Machin
	Herbert=&x
APLUS

§debut
Machin Coco(*(2))
Machin Bob
Bob==&Coco
Bob@Herbert=*(5)
GOTOPRINTDUTEXTE() ; &Coco@Herbert «Coco=»
GOTOPRINTDUTEXTE() ; &Bob@Herbert «Bob=»