C_far

★ Compilation : Warnings - Errors - Fatals Errors ★

22 messages dans ce sujet

Compilation : Errors - Fatals Errors - Warnings
Liste et explication de toutes les erreurs, erreurs fatales et avertissements que vous pourrez rencontrer en Pawn lors de la compilation.

Sera édité sur plusieurs jours.

Pour chercher dans la liste qui suit votre problème : Ctrl+F et tapez ce que le compilateur vous indique. (Favorisez principalement le type et le numéro, par exemple "error 001")

 

Initiation:
Errors/Erreurs:entre ces trois choses qui peuvent apparaître lors de la compilation de votre code :

  • Error/Erreur : Il est là pour signaler que votre code est erroné et ne générera donc pas de .amx.
  • Fatal error/Erreur fatale : Au même titre qu'un "error", il ne générera pas de .amx et en plus de ça arrêtera la compilation de votre code, il ne montre donc pas les warnings ou errors pouvant suivre.
  • Warning/Avertissement : Il est là pour avertir que quelque chose n'est pas correct pouvant provoquer un bug dans votre script, mais compile tout de même votre code averti.

 

Errors/Erreurs:

  • error 001: expected token: token, but found token:
    • Le compilateur s'attend à trouver un caractère à la place d'un autre.
    • Précision : Lorsque le compilateur vous affiche : but found "-identifier-", c'est que vous avez oublié quelque chose (une parenthèse, un point-virgule etc...).
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {	
        	printf("%d", 42) // Il manque un point-virgule à la fin de l'instruction
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {	
        	printf("%d", 42); // On place le point-virgule à la fin de l'instruction
        }

         

  • error 002: only a single statement (or expression) can follow each “case”:
    • Vous utilisez le mot-clé switch et le compilateur ne s'attend pas à trouver autre chose à l'intérieur des accolades que le mot-clé case et default (sauf dans leurs instructions).
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 3;
        
        	switch(variable) {
        		case 1: {}
        		case 2: {}
        		case 3: {}
        		variable++; // Cette instruction n'est ni un "case" ou un "default"
        	}
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 3;
        
        	switch(variable) {
        		case 1: {}
        		case 2: {}
        		case 3: {}
        		// le "variable++;" n'était pas à la bonne position
        	}
        
        	variable++; // On la place donc en dehors du switch
        }

         

  • error 003: declaration of a local variable must appear in a compound block:
    • Vous venez de déclarer une variable locale juste après une condition ou une boucle et vous avez oublié des accolades.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
            new
                variable = 3;
        
            if(variable == 3) new variable2;
            printf("%d", ++variable2);
        }

         

      • Exemple correct :

      • #include <a_samp>
        
        main() {
        	new
        	variable = 3;
        
        	if(variable == 3) {
        		new 
        			variable2;
        
        		printf("%d", ++variable2);
        	}
        }

         

  • error 004: function name is not implemented:
    • Vous utilisez une fonction qui n'est pas implémentée dans le Pawn. Regardez si vous n'avez pas oublié une include, c'est souvent le cas.
      • Exemple incorrect :
      • main() {
        	print("Coucou !"); // print n'est pas implémenté par défaut
        }

         

      • Exemple correct :
      • #include <a_samp> // <---
        
        main() {
        	print("Coucou !"); 
        }

         

 

  • error 005: function may not have arguments:
    • Vous avez placé un ou plusieurs paramètres dans la fonction main, alors que cette fonction n'en utilise pas.
      • Exemple incorrect :
      • #include <a_samp>
        
        main(variable) {
        
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        
        }

         

  • error 006: must be assigned to an array:
    • Vous avez attribué à une variable une chaîne de caractères ou un tableau à l'aide du symbole '=' ou vous avez oublié d'indexer votre tableau pour y attribuer une valeur.
      • Exemple incorrect :
      • #include <a_samp>
        
        new
        	array;
        
        main() {
        	new
        		string[] = "Bonjour";
        
        	array = string;
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        new
        	array[8];
        
        main() {
        	new
        		string[] = "Bonjour";
        
        	array = string;
        }

         

  • error 007: operator cannot be redefined:
    • Vous venez de définir un opérateur invalide, seul un ensemble restreint d'opérateurs peut être redéfini.
      • Exemple incorrect :
      • #include <a_samp>
        
        stock Op:operator¤(a)
        	return Op:(a*a);
        
        main() {
        	new
        		Op:variable = 7;
        
        	printf("%d", _:variable);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        stock Op:operator=(a)
        	return Op:(a*a);
        
        main() {
        	new
        		Op:variable = 7;
        
        	printf("%d", _:variable);
        }

         

  • error 008: must be a constant expression; assumed zero:
    • Vous avez placé une variable ou un tableau à la place d'une valeur constante.
      Cette erreur peut apparaître dans plusieurs cas, mais je n'utiliserai qu'un cas pour l'exemple.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 7,
        		array[variable];
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		array[7];
        }

         

  • error 009: invalid array size (negative, zero or out of bounds):
    • Vous avez mal indexé votre tableau, la valeur est nulle ou négative.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		array[0];
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		array[10];
        }

         

  • error 010: invalid function or declaration:
    • Vous avez mal déclaré votre variable ou fonction.
      • Exemple incorrect :
      • #include <a_samp>
        
        variable;
        
        main() {
        	printf("%d", variable);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        new
        	variable;
        
        main() {
        	printf("%d", variable);
        }

         

  • error 011: invalid outside functions:
    • Cette erreur n’apparaîtra jamais dans la version du Pawn de SAMP.
  • error 012: invalid function call, not a valid address:
    • Vous utilisez un tableau ou une variable comme fonction.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	printf("%d", variable());
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	printf("%d", variable); // Nous avons enlevé les parenthèses car ce n'est pas une fonction
        }

         

  • error 013: no entry point (no public functions):
    • Vous n'avez pas placé de fonctions publiques ou une entrée (fonction main) dans votre code.
      • Exemple incorrect :
      • #include <a_samp>
        
        // Il n'y a aucune fonction

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        
        }

         

  • error 014: invalid statement; not in switch:
    • Vous utilisez le mot-clé "default" ou "case" en dehors d'un bloc "switch".
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	case 3: print("Coucou");
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	print("Coucou");
        }

         

  • error 015: "default" case must be the last case in switch statement:
    • Vous avez placé le mot-clé "default" avant le/les mot(s)-clé(s) "case".
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {	
        	new
        		variable = 3;
        
        	switch(variable) {
        		default: {}
        		case 1: {}
        		case 2: {}
        		case 3: {}
        	}
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {	
        	new
        		variable = 3;
        
        	switch(variable) {
        		case 1: {}
        		case 2: {}
        		case 3: {}
        		default: {}
        	}
        }

         

  • error 016: multiple defaults in "switch":
    • Vous avez placé plusieurs fois le mot-clé "default" dans le bloc d'un "switch".
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 3;
        
        	switch(variable) {
        		case 1: {}
        		case 2: {}
        		case 3: {}
        		default: {}
        		default: {}
        	}
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 3;
        
        	switch(variable) {
        		case 1: {}
        		case 2: {}
        		case 3: {}
        		default: {}
        		// Nous avons supprimé le default en trop
        	}
        }

         

  • error 017: undefined symbol symbol:
    • Vous n'avez pas déclaré/implémenté votre variable ou fonction.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	// Vous utilisez une variable qui n'a pas été déclarée
        
        	printf("%d", variable);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	printf("%d", variable);
        }

         

  • error 018: initialization data exceeds declared size:
    • Vous avez indexé un tableau trop petit par rapport aux données que vous souhaitez y inclure.
      Précision : N'oubliez pas que lorsque vous déclarer votre tableau en y attribuant une chaîne de caractères par défaut, de prendre en compte le nullbyte.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		array[5] = "Salut";
        
        	print(array);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		array[6] = "Salut";
        
        	print(array);
        }

         

  • error 019: not a label: name:
    • Vous pointez vers le label d'un goto, mais il n'est pas dans le code.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {	
        	goto test;
        
        	// Vous avez oublié d'ajouter le label
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	goto test;
        
        	test:
        }

         

  • error 020: invalid symbol name:
    • Vous avez déclaré une variable ou un tableau global commençant par un caractère non-valide.
      Caractère autorisé : "A-Z, a-z, _".
      • Exemple incorrect :
      • #include <a_samp>
        
        new
        	2variable;
        
        main() {
        	printf("%d", 2variable);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        new
        	variable;
        
        main() {
        	printf("%d", variable);
        }

         

  • error 021: symbol already defined: identifier:
    • Vous avez défini plusieurs fois des variables ou des tableaux portant le même nom.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable,
        		variable;
        
        	printf("%d", variable);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	printf("%d", variable);
        }

         

  • error 022: must be lvalue (non-constant):
    • Vous tentez de modifier la valeur d'une variable ou d'un paramètre constant.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	const
        		variable;
        
        	variable = 5;	
        
        	printf("%d", variable);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	variable = 5;	
        
        	printf("%d", variable);
        }

         

  • error 023: array assignment must be simple assignment:
    • Vous tentez d'utiliser un opérateur mathématique sur un tableau sans indiquer un index de cellule.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		array[5] = {0, 10, 15, 20, 25};
        
        	array += 5;
        
        	printf("%d", array[0]);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		array[5] = {0, 10, 15, 20, 25};
        
        	array[0] += 5;
        
        	printf("%d", array[0]);
        }

         

  • error 024: "break" or "continue" is out of context:
    • Vous utilisez le mot-clé "break" ou "continue" en dehors d'une boucle.
      Précision : Contrairement au C(++), le mot-clé "switch" n'a pas besoin d'utiliser le mot-clé "break".
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 3;
        
        	switch(variable) {
        		case 1: break;
        		case 2: {}
        		case 3: {}
        	}
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 3;
        
        	switch(variable) {
        		case 1: {};
        		case 2: {}
        		case 3: {}
        	}
        }

         

  • error 025: function heading differs from prototype:
    • Les paramètres de votre fonction publique ne sont pas cohérents avec votre forward.
      • Exemple incorrect :
      • #include <a_samp>
        
        main(){
        
        }
        
        forward FunctionPublic();
        public FunctionPublic(arg) {
        	return 1;
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main(){
        
        }
        
        forward FunctionPublic();
        public FunctionPublic() {
        	return 1;
        }

         

  • error 026: no matching "#if...":
    • Vous utilisez la directive "#endif" ou "#else" et vous avez oublié d'utiliser la directive "#if" juste avant.
      • Exemple incorrect :
      • #include <a_samp>
        
        #define TEST 2
        
        #endif
        
        main() {	
        
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        #define TEST 2
        
        #if TEST == 2
        
        #endif
        
        main() {	
        
        }

         

  • error 027: invalid character constant:
    • Deux cas : 
      Vous avez placé plusieurs caractères entre deux apostrophes.
      Vous avez utilisé un caractère invalide après un antislash.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 'abc';
        
        	printf("\s%c", variable);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 'a';
        
        	printf("\n%c", variable);
        }

         

  • error 028: invalid subscript (not an array or too many subscripts): identifier:
    • Vous utilisez une variable ou une fonction comme un tableau.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	printf("%d", variable[0]);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {	
        	new
        		variable;
        
        	printf("%d", variable);
        }

         

  • error 029: invalid expression, assumed zero:
    • Le compilateur n'arrive pas à interpréter la ligne de code.

      Si la ligne contient d'autres erreurs, focalisez-vous dessus car l'erreur 29 n'est pas précise pour déterminer d'où vient le problème.
      Sinon, vous avez surement ajouté un caractère invalide comme par exemple un point-virgule à la fin de la ligne après un mot clé d'état (do...while est une exception).

      Cette erreur peut aussi apparaître quand vous avez oublié d'indiquer la case d'un tableau.
      Aucun exemple
       

  • error 030: compound statement not closed at the end of file:
    • Vous avez oublié de fermer un/des bloc(s) d'instructions avec une/des accolade(s).
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	if(variable == 2) {
        		print("Test");
        	// Il manque une accolade pour fermer la condition
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	if(variable == 2) {
        		print("Test");
        	}
        }

         

  • error 031: unknown directive:
    • Vous utilisez une directive de préprocesseur inconnue au compilateur.
      • Exemple incorrect :
      • #include <a_samp>
        
        #definee TEST 0
        
        main() {
        
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        #define TEST 0
        
        main() {
        
        }

         

  • error 032: array index out of bounds (variable name):
    • Vous accédez à la case d'un tableau qui est plus gros que son index.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		array[3] = {5, 10, 15};
        
        	printf("%d", array[3]);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		array[3] = {5, 10, 15};
        
        	printf("%d", array[2]);
        }

         

  • error 033: array must be indexed (variable name):
    • Vous utilisé un tableau dans une expression comme par exemple une case de tableau, vous devez donc indiquer la case du tableau.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		array[3] = {5, 10, 15},
        		array2[16] = {1, 2, ...};
        
        	printf("%d", array2[ array ]);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		array[3] = {5, 10, 15},
        		array2[16] = {1, 2, ...};
        
        	printf("%d", array2[ array[2] ]);
        }

         

  • error 034: argument does not have a default value (argument index):
    • Vous utilisez un paramètre fictif alors que le paramètre de la fonction n'est pas par défaut.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	function(1, _);
        }
        
        function(arg, arg2) {
        	#pragma unused arg, arg2
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	function(1, _);
        }
        
        function(arg, arg2=10) {
        	#pragma unused arg, arg2
        }

         

  • error 035: argument type mismatch (argument index):
    • Le type d'argument n'est pas le même que vous passez en le type d'argument du paramètre de la fonction.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	print(variable);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	printf("%d", variable);
        }

         

  • error 036: empty statement:
    • Vous avez mis un point-virgule en trop.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	if(variable == 0); {
        		print("Test");
        	}
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable;
        
        	if(variable == 0) { // Nous avons retiré le point-virgule
        		print("Test");
        	}
        }

         

  • error 037: invalid string (possibly non-terminated string):
    • Vous avez oublié de fermer une chaîne de caractères.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		array[] = "test; // Il manque un guillemet
        
        	print(array);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		array[] = "test";
        
        	print(array);
        }

         

  • error 038: extra characters on line:
    • Vous avez un caractère inutile dans votre ligne.
      • Exemple incorrect :
      • #include <a_samp>>
        
        main() {
        
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        
        }

         

  • error 039: constant symbol has no size:
    • Vous tentez d'obtenir la taille d'une variable constante.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	const
        		variable = 5;
        
        	printf("%d %d", sizeof(variable), variable);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 5;
        
        	printf("%d %d", sizeof(variable), variable);
        }

         

  • error 040: duplicate "case" label (value value):
    • Vous avez plusieurs case contenants la même valeur dans un "switch".
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 3;
        
        	switch(variable) {
        		case 1: {}
        		case 2: {}
        		case 3: {}
        		case 3: {}
        	}
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 3;
        
        	switch(variable) {
        		case 1: {}
        		case 2: {}
        		case 3: {}
        		// Nous avons supprimé le case en trop
        	}
        }

         

  • error 041: invalid ellipsis, array size is not known:
    • Vous avez déclaré un tableau dont les valeurs s'initialisent progressivement sans indiquer l'index du tableau, le compilateur ne sait donc pas quand il doit s'arrêter.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		array[] = {0, 4, ...};
        
        	printf("%d", array[16]);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		array[32] = {0, 4, ...};
        
        	printf("%d", array[16]);
        }

         

  • error 042: invalid combination of class specifiers:
    • Vous utilisez plusieurs initialiseurs incompatibles entre eux pour une variable ou une fonction.
      • Exemple incorrect :
      • #include <a_samp>
        
        static public 
          	variable;
        
        main() {
        	printf("%d", variable);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        static 
          	variable;
        
        main() {
        	printf("%d", variable);
        }

         

  • error 043: character constant exceeds range for packed string:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 044: positional parameters must precede all named parameters:
    • Vous n'avez pas indiqué le nom de tous les paramètres par rapport à leur positionnement.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	function(.arg=5, 5);
        }
        
        function(arg, arg2) {
        	#pragma unused arg, arg2
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	function(.arg=5, .arg2=5);
        }
        
        function(arg, arg2) {
        	#pragma unused arg, arg2
        }

         

  • error 045: too many function arguments:
    • Vous avez placé plus de 126 paramètres dans une fonction, pour résoudre ce problème, réduisez vos paramètres à maximum 126. Aucun exemple.
  • error 046: unknown array size (variable name):
    • Vous tentez d'attribuer quelque chose à un tableau, mais le compilateur ne connait pas sa taille.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		array[6] = "4 5";
        
        	function(array);
        }
        
        function(array[]) {
        	new
        		index;
        
        	array = strtok(array, index);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		array[6] = "4 5";
        
        	function(array);
        }
        
        function(array[]) {
        	new
        		index,
        		tmp[20];
        
        	tmp = strtok(array, index);
        }

         

  • error 047: array sizes do not match, or destination array is too small:
    • Vous tentez d'attribuer quelque chose à un tableau, mais la taille de celui-ci est trop petite.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		array[6] = "4 5";
        
        	function(array);
        }
        
        function(array[]) {
        	new
        		index,
        		tmp[19];
        
        	tmp = strtok(array, index);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		array[6] = "4 5";
        
        	function(array);
        }
        
        function(array[]) {
        	new
        		index,
        		tmp[20]; // La taille du tableau étant retourné par strtok est 20
        
        	tmp = strtok(array, index);
        }

         

  • error 048: array dimensions do not match:
    • Vous tentez d'assigner un tableau à un autre avec deux dimensions différentes.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new 
        		a[2][18],
        		b[2][18];
        
        	a = b[1];
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new 
        		a[2][18],
        		b[2][18];
        
        	a = b;
        }

         

  • error 049: invalid line continuation:
    • Vous utilisez le caractère de contrôle sans de suite sur la ligne suivante.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	// --------- \\
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	// --------- \\
        	// ---------
        }

         

  • error 050: invalid range:
    • Vous avez indiqué un intervalle négatif, principalement dans un case, une constante supérieure précédant une autre.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		var = 5;
        
        	switch(var) {
        		case 5 .. 0:
        	}
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		var = 5;
        
        	switch(var) {
        		case 0 .. 5:
        	}
        }

         

  • error 051: invalid subscript, use "[ ]" operators on major dimensions:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 052: multi-dimensional arrays must be fully initialized:
    • Vous n'avez pas rempli totalement les dimensions de votre tableau.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		array[3][3] = {
        			{1, 2, 3},
        			{4, 5, 6}
        		};
        
        
        	printf("%d", array[1][2]);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		array[3][3] = {
        			{1, 2, 3},
        			{4, 5, 6},
        			{7, 8, 9}
        		};
        
        
        	printf("%d", array[1][2]);
        }

         

  • error 053: exceeding maximum number of dimensions:
    • Vous avez déclaré un tableau de plus de 3 dimensions. Il y a une solution pour déclarer un tableau à 4 dimensions en utilisant le compilateur de Zeex.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new a[2][2][2][2];
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new a[2][2][2];
        }

         

  • error 054: unmatched closing brace ("}"):
    • Vous avez placé une accolade fermante en trop, ou il manque une accolade ouvrante.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        }
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        
        }

         

  • error 055: start of function body without function header:
    • Vous avez implémenté le corps d'une fonction sans y placer un entête.
      • Exemple incorrect :
      • #include <a_samp>
        
        {
          
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
          
        }

         

  • error 056: arrays, local variables and function arguments cannot be public:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 057: unfinished expression before compiler directive:
    • Vous avez utilisé la directive #if (+ #elseif/#else) en scindant une instruction en plusieurs lignes.
      • Exemple incorrect :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 5;
        
        	printf("%d"
        	#if defined variable
        		, variable
        	#endif
        		);
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        main() {
        	new
        		variable = 5;
        
          	#if defined variable
        		printf("%d", variable);
          	#else
        		print("5");
        	#endif
        		);
        }

         

  • error 058: duplicate argument; same argument is passed twice:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 059: function argument may not have a default value (variable ""):
    • Vous avez placé un paramètre par défaut dans l'entête d'une fonction publique.
      • Exemple incorrect :
      • #include <a_samp>
        
        forward MyFunction(a = 0);
        public MyFunction(a = 0) {
        	
        }
        
        main() {
        	
        }

         

      • Exemple correct :
      • #include <a_samp>
        
        forward MyFunction(a);
        public MyFunction(a) {
        	
        }
        
        main() {
        	
        }

         

  • error 060: multiple "#else" directives between "#if ... #endif":
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 061: "#elseif" directive follows an "#else" directive:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 062: number of operands does not fit the operator:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 063: function result tag of operator "" must be "":
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 064: cannot change predefined operators:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 065: function argument may only have a single tag (argument %d):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 066: function argument may not be a reference argument or an array (argument ""):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 067: variable cannot be both a reference and an array (variable ""):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 068: invalid rational number precision in #pragma:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 069: rational number format already defined:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 070: rational number support was not enabled:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 071: user-defined operator must be declared before use (function ""):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 072: "sizeof" operator is invalid on "function" symbols:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 073: function argument must be an array (argument ""):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 074: #define pattern must start with an alphabetic character:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 075: input line too long (after substitutions):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 076: syntax error in the expression, or invalid function call:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 077: malformed UTF-8 encoding, or corrupted file: %s:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 078: function uses both "return" and "return <value>":
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 079: inconsistent return types (array & non-array):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 080: unknown symbol, or not a constant symbol (symbol ""):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 081: cannot take a tag as a default value for an indexed array parameter (symbol ""):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 082: user-defined operators and native functions may not have states:
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 083: a function or variable may only belong to a single automaton (symbol ""):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 084: state conflict: one of the states is already assigned to another implementation (symbol ""):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 085: no states are defined for symbol "":
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 086: unknown automaton "":
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 087: unknown state "" for automaton "":
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 088: public variables and local variables may not have states (symbol ""):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 089: state variables may not be initialized (symbol ""):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 090: public functions may not return arrays (symbol ""):
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code
  • error 091: ambiguous constant; tag override is required (symbol ""):
    •  
    • Explication
      • Exemple incorrect :
      • code
      • Exemple correct :
      • code

 

Fatals errors/Erreurs fatales:

 

Warnings/Avertissements:

1 personne aime ça

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci pour ce cours de chinois mdr, nan sérieusement sa peut aider les personnes qui commencent ou même qui sont assez forts dans le PAWN.

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci beaucoup, c'est vrai que j'ai du mal à comprendre les indications du compilateur, ça devrait m'aider.

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 21/08/2016 à 14:42, Leon' a dit :

Merci beaucoup, c'est vrai que j'ai du mal à comprendre les indications du compilateur, ça devrait m'aider.

Il faut que je refasse le poste entièrement car le copié/collé que j'ai fait de l'ancien forum a été foireux

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 21/05/2016 à 12:34, C_far a dit :

Exemple incorrect :

Code:

#include <a_samp>
main()
{                
    printf("%d", 42) 
}

Correction :

Code:

#include <a_samp>
main()
{        
    printf("%d", 42)
}

J'ai beaux chercher je ne vois aucune differencer.. :/

1 personne aime ça

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 9 heures, Nova_ a dit :

J'ai beaux chercher je ne vois aucune differencer.. :/

Exact, comme je l'ai dit : le copié/collé a foiré

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 21/05/2016 à 12:34, C_far a dit :
En cours de refonte !

Modifié Octobre 14, 2016 par C_far

On attends toujours ! xD 

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 2 minutes, Nova a dit :

On attends toujours ! xD 

Ah ouais putain j'avais complètement oublié ce sujet, allez hop j'm'y remets :')

Partager ce message


Lien à poster
Partager sur d’autres sites

Je recommence ce sujet proprement, des avis sur sa mise en page actuelle ? (14/05/2017 à 15h)

Modifié par C_far

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 14 minutes, C_far a dit :

Je recommence ce sujet proprement, des avis sur sa mise en page actuelle ? (14/05/2017 à 15h)

Je ne me rappel pas comment c'était avant donc je peux pas te dire si c'est mieux. Mais sous forme de liste ça a l'air bien là.

Partager ce message


Lien à poster
Partager sur d’autres sites
à l’instant, vic1997 a dit :

Je ne me rappel pas comment c'était avant donc je peux pas te dire si c'est mieux. Mais sous forme de liste ça a l'air bien là.

Bah je voulais utiliser la balise

[indent][/indent]

Mais c'est assez buggé 

Partager ce message


Lien à poster
Partager sur d’autres sites

Enlève le bleu souligné. On dirait des liens.

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 54 minutes, Papawy a dit :

Enlève le bleu souligné. On dirait des liens.

J'avoue, j'ai essayer de clic *-*

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a une heure, Papawy a dit :

Enlève le bleu souligné. On dirait des liens.

J'ai gardé le bleu, mais j'ai retiré le soulignement. :D

 

Sinon, la mise en page est bien ?

Modifié par C_far
1 personne aime ça

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 11 minutes, C_far a dit :

Sinon, la mise en page est bien ?

Ui *-*

Partager ce message


Lien à poster
Partager sur d’autres sites

J'avais fait une traduction de ce type de post sur l'ancien forum:

http://forum.sa-mp.com/showthread.php?t=382257

 

Pour le visualiser, créez un nouveau topic sur l'ancien forum, collez le texte et faîtes "prévisualiser".

Il est plus terminé que celui ci :)

Partager ce message


Lien à poster
Partager sur d’autres sites
il y a 34 minutes, XDamienX007 a dit :

J'avais fait une traduction de ce type de post sur l'ancien forum:

http://forum.sa-mp.com/showthread.php?t=382257

 

Pour le visualiser, créez un nouveau topic sur l'ancien forum, collez le texte et faîtes "prévisualiser".

Il est plus terminé que celui ci :)

 

Ouais il était incomplet du coup j'en avais fait un aussi :

http://forum.sa-mp.com/showthread.php?t=575541

 

Tu me fais penser qu'il faut que j'actualise ce topic, j'suis vraiment un flemmard xD

Partager ce message


Lien à poster
Partager sur d’autres sites

Pas de maj @C_far du topic ? 

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 5 heures, Heaven a dit :

Pas de maj @C_far du topic ? 

 

J'avais une grosse flemme car c'est chiant de formater, mais j'viens de faire le squelette donc là j'ai plus qu'à le remplir, j'vais le faire aujourd'hui.

 

Edit 10h10 : J'ai remis ceux de l'ancien sujet et j'en ai rajoutés, il y a pas mal d'erreurs que le compilateur ne renvoie plus ou alors j'ai pas réussi à lui faire cracher les erreurs dans la console et personne n'a posté sur le forum officiel. 

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 5 heures, C_far a dit :

 

J'avais une grosse flemme car c'est chiant de formater, mais j'viens de faire le squelette donc là j'ai plus qu'à le remplir, j'vais le faire aujourd'hui.

 

Edit 10h10 : J'ai remis ceux de l'ancien sujet et j'en ai rajoutés, il y a pas mal d'erreurs que le compilateur ne renvoie plus ou alors j'ai pas réussi à lui faire cracher les erreurs dans la console et personne n'a posté sur le forum officiel. 

Je l'ai remarqué aussi d'ailleurs sa crash plus lorsqu'on oublie une accolade 

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 2 heures, Marcus62 a dit :

Je l'ai remarqué aussi d'ailleurs sa crash plus lorsqu'on oublie une accolade 

 

Ca dépend, moi en général j'ai aucun crash car j'utilise le compilateur de Zeex 3.10.8 (et pas le 3.10.9 car elle est pas compatible avec certaines includes; j'attends qu'elles soient update)

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant