AutoIt utilise les op�rateurs d'affectation, math�matiques, de comparaison, et les op�rateurs logiques suivants.
Op�rateur | Description |
---|---|
Op�rateurs d'affectation | |
= |
Affectation, exemple: $vVar = 5 (affecte le nombre 5 � $vVar) |
+= |
Affectation avec addition. Exemple: $vVar += 1 (ajoute 1 � $vVar) |
-= |
Affectation avec soustraction. |
*= |
Affectation avec multiplication. |
/= |
Affectation avec division. |
Op�rateur de concat�nation | |
& | Concat�ne/joint deux cha�nes. Exemple: "un" & 10 (equals "un10") |
&= |
Affectation avec concat�nation; Exemple: $vVar = "un", et puis $vVar &= 10 ($vVar est maintenant �gal � "un10") |
Op�rateurs math�matiques | |
+ | Additionne deux nombres. Exemple: 10 + 20 (�gale 30) |
- | Soustrait deux nombres. Exemple: 20 - 10 (�gale 10) Agit aussi comme un op�rateur unaire (pour affecter une valeur n�gative � une variable). |
* | Multiplie deux nombres. Exemple: 20 * 10 (�gale 200) |
/ | Divise deux nombres. Exemple: 20 / 10 (�gale 2) |
^ | El�ve un nombre � une puissance. Exemple: 2 ^ 4 (�gale 16) |
Op�rateurs de comparaison (insensible � la casse si utilis�s avec des cha�nes except� pour ==) | |
= | Teste si deux valeurs sont �gales. Exemple: If $var = 5 Then (vrai si $vVar �gale 5). Insensible � la casse quand utilis� avec des cha�nes. |
== | Teste si deux cha�nes sont �gales. Sensible � la casse. Les valeurs gauche et droite sont converties en cha�nes si elles ne sont pas d�j� des cha�nes. Cet op�rateur devrait �tre utilis� seulement si la comparaison des cha�nes n�cessite une sensibilit� � la casse. |
<> | Teste si deux valeurs sont diff�rentes. Insensible � la casse quand utilis� avec des cha�nes. Pour que la comparaison soit sensible � la casse utilisez Not ("string1" == "string2") |
> | Teste si la premi�re valeur est plus grande que la seconde. Les cha�nes sont compar�es dans l'ordre lexicographique m�me si le contenu de la cha�ne semble �tre num�rique. |
>= | Teste si la premi�re valeur est plus grande ou �gale que la seconde. Les cha�nes sont compar�es dans l'ordre lexicographique m�me si le contenu de la cha�ne semble �tre num�rique. |
< | Teste si la premi�re valeur est plus petite que la seconde. Les cha�nes sont compar�es dans l'ordre lexicographique m�me si le contenu de la cha�ne semble �tre num�rique. |
<= | Teste si la premi�re valeur est plus petite ou �gale que la seconde. Les cha�nes sont compar�es dans l'ordre lexicographique m�me si le contenu de la cha�ne semble �tre num�rique. |
Op�rateurs logiques | |
And | Conjonction logique. Exemple: If $vVar = 5 And $vVar2 > 6 Then (Vrai si $vVar �gale 5 et $vVar2 est plus grand (strictement) que 6) |
Or | Disjonction logique. Exemple: If $vVar = 5 Or $vVar2 > 6 Then (Vrai si $vVar �gale 5 ou $vVar2 est plus grand (strictement) que 6) |
Not | N�gation logique. Exemple: Not 1 (False) |
Conditional operator | |
? : | Choix suivant une expression. Exemple: $condition ? $expression1 : $expression2 ($expression1 si $condition est vraie ou $expression2 si fausse) Voir l'op�rateur Ternary pour un exemple. |
Lorsque plus d'un op�rateur logique est utilis� dans une expression, l'ordre dans lequel les choses se passe est control� par la Priorit� des op�rateurs. La priorit� utilis�e dans AutoIt est donn�e ci-dessous. L� o� deux op�rateurs ont la m�me priorit� l'expression est �valu�e de la Gauche vers la Droite.
De la priorit� la plus haute � la plus basse :
Not
^
* /
+ -
&
< > <= >= = <> ==
And Or
Exempe: 2 + 4 * 10 est �gal � 42:
4 * 10 (�gale 40)
2 + 40 (�gale 42)
Comme la multiplication * a une priorit� plus haute que + elle est effectu�e avant l'addition.
Vous pouvez utiliser des parenth�ses pour obliger une partie de l'expression � �tre �valu�e en premier.
Exemple: (2 + 4) * 10 �gale 60.
Notez ceci, lorsque vous utilisez les op�rateurs logique AND, OR:
Exemple: If MyFunc1() Or MyFunc2() Then (MyFunc2() n'est pas appel�e si MyFunc1() retourne vrai)
e.g. If MyFunc1() And MyFunc2() Then (MyFunc2() n'est pas appel�e si MyFunc1() retourne faux)
Note: Prudence s'impose si vous comparez des types de donn�es mixtes, comme lorsque vous utilisez l'op�rateur de cha�ne == sensible � la casse, les comparaisons mixtes sont g�n�ralement effectu�es num�riquement. La plupart des cha�nes seront �valu�es comme 0 et donc le r�sultat pourrait bien ne pas �tre celui attendu. Il est recommand� de forcer les �l�ments compar�s dans le m�me type de donn�es en utilisant les fonctions Number/String avant la comparaison.