Les expressions

De ZbahWiki.

Les valeurs sont le type le plus primitif des expressions. Des expressions plus complexes sont formés à partir des valeurs en utilisant différents opérateurs.

Les constantes numériques sont représentés dans le NXT par des entiers ou des valeurs en virgule flottante.

Le type dépend de la valeur de la constante. NXC utilise en interne 32 bits à virgule flottante pour l'évaluation des expressions constantes. Les constantes numériques sont écrites soit décimale (par exemple 123, 3.14) ou hexadécimale (par exemple 0xABC).

Actuellement, il ya très peu de gamme de contrôle sur les constantes, car utiliser une valeur plus importante que prévu peut produire des résultats inhabituels.

Deux valeurs spéciales sont prédéfinies: vrai(true) et faux(false). La valeur false est un zéro (0), tandis que la valeur true est un (1). Ces mêmes valeurs sont renvoyées pour les opérateurs relationnels (par exemple, <): lorsque la relation est fausse la valeur est 0, sinon la valeur est 1. Les valeurs peuvent être combinées avec les opérateurs. Les opérateurs du NXC sont énumérés ici par ordre de priorité par ordre décroissant.

Opérateur Description Associativité Restriction Exemple
abs() Valeur absolue
abs(x);
sign() signe de la valeur
sign(x);
++,-- (pré/post)(in/dé)crementeur gauche ou droite Seulement sur les variables
x++;
- moins unaire droite
-x;
~ négation bit à bit droite
~123;
 ! négation logique droite
!x;
*,/,% multiplication, division, module gauche
x*y;
+,- addition, soustraction gauche
x+y;
<<,>> décalage de bit à gauche ou a droite gauche
x << 4;
<,>,<=,>= opérateurs relationnels gauche
x<y;
==,!= égal ou différent gauche
x==1;
& et logique bit à bit gauche
x&y;
^ ou exclusif bit à bit gauche
x^y;
ou inclusif bit à bit gauche
x|y;
&& et logique gauche
x && y;
ou logique gauche
x || y;
 ?: operateurs ternaires droite
x==1?y:z;

Le cas échéant, les parenthèses sont utilisées pour modifier l'ordre d'évaluation:

x = 2 + 3 * 4;         // x vaut 14
y = (2 + 3) * 4;       // y vaut 20
Outils personnels