Processing affiche un certain nombre de messages d'erreur dans la bande grise de la console (qui dans ce cas de figure change de couleur en devenant rouge foncé). Voici une liste des erreurs les plus courantes.
Cette erreur se produit fréquemment lorsque vous oubliez un « ; » en fin de ligne ou que vous n'avez pas correctement fermé un bloc d'accolades. Le programme voit une instruction qui fait deux lignes et dont la syntaxe est par conséquent erronée.
int nombreEntier = 1 float nombreVirgule = 0.1;
Le code correct est :
int nombreEntier = 1; float nombreVirgule = 0.1;
Cette erreur se produit lorsque vous appelez une variable qui n'existe pas. Vérifiez que vous avez bien déclaré votre variable et que vous avez respecté la portée des variables.
int nombre2 = nombre1 + 5;
Le code correct est :
int nombre1 = 10; int nombre2 = nombre1 + 5;
Cette erreur se produit lorsque vous n'avez pas correctement fermé un bloc par une accolade.
void draw() { } void setup() {
Le code correct est :
void draw() { } void setup() { }
int diviseur = 0; println(1 / diviseur);
Dans Processing, on ne peut jamais diviser un nombre par zéro. Au besoin, vérifier que le diviseur n'est pas zéro avant de faire la division. C'est la fonction du morceau de code suivant :
int diviseur = 0; if (diviseur != 0) { println(1 / diviseur); } else { println("On ne peut pas diviser par zéro!"); }
Cette erreur survient quand vous essayez d'affecter une valeur qui ne correspond pas au type d'une variable.
int a = 10; float b = 10.5; a = b;
Dans le cas présent, pour que nous puissions affecter un nombre à virgule à une variable qui est prévue pour stocker un nombre entier, il faut forcer Processing à la transformer. Le code correct est :
int a = 10; float b = 10.5; a = int(b);
Cette erreur survient lorsque vous tentez d'accéder à un élément en dehors des limites d'un tableau. Dans l'exemple suivant, le tableau à une taille de 3 (case 0, 1 et 2) et nous essayons d'accéder à la case 4.
int[] nombres = new int[3]; nombres[0] = 1; nombres[1] = 20; nombres[2] = 5; println(nombres[4]);
Le code correct est le suivant (la 3e case correspond au rang 2 et non pas au rang 3 ou 4 puisqu'un tableau commence toujours à partir d'une case de rang 0) :
int[] numbers = new int[3]; numbers[0] = 1; numbers[1] = 20; numbers[2] = 5; println(numbers[2]);
Cette erreur se produit lorsque vous tentez d'accéder à un élément qui n'existe pas en mémoire. Par exemple en essayant d'accéder à un objet qui n'a pas encore été initialisé.
Balle maBalle; void setup() { maBalle.x = 10; } class Balle { int x; int y; }
Le code correct est :
Balle maBalle = new Balle(); void setup() { maBalle.x = 10; } class Balle { int x; int y; }
Il y a une erreur de communication avec le serveur Booktype. Nous ne savons pas actuellement où est le problème.
Vous devriez rafraîchir la page.