Partage
  • Partager sur Facebook
  • Partager sur Twitter

Tableau Excercice 1 (Apprennez le language C)

warning: variable 'sommeDuTableau' set but not used

    16 décembre 2018 à 23:00:51

    ... Je suis entrain de faire l'exercice #1 du chapitre sur les tableaux.

    voici mon code :

    #include <stdio.h>
    #include <stdlib.h>
    
    int additionTableau(int tableau[],int tailleDuTableau);
    
    int main(int argc, char *argv[])
    {
    	int *sommeDuTableau=NULL;
    	int tableau[4]={5,10,1};
    	additionTableau(tableau,4);
    
    	return *sommeDuTableau;
    }
    
    int additionTableau(int tableau[],int tailleDuTableau)
    {
    	int sommeDuTableau=0;
    	sommeDuTableau = tableau[0]+tableau[1]+tableau[2]+tableau[3];
    	return 0;
    }
    
    	
    


    Quand je compile, j'ai cette erreur :

     gcc -o tabadd.exe tabadd.c -Wall
    tabadd.c: In function 'additionTableau':
    tabadd.c:17:6: warning: variable 'sommeDuTableau' set but not used [-Wunused-but-set-variable]
      int sommeDuTableau=0;
          ^~~~~~~~~~~~~~

    que je n'arrive pas à corriger. Elle est du a la variable "sommeDuTableau" dans la fonction "additionTableau" mais je ne pige pas ce qu'elle a de pas correcte cette ligne 18.

    -
    Edité par sinAo 16 décembre 2018 à 23:02:48

    • Partager sur Facebook
    • Partager sur Twitter
      16 décembre 2018 à 23:13:11

      Bonjour ! Ce programme contient pas mal d'erreurs de conception qui suggèrent que tu n'as pas bien compris l'utilisation des fonctions (le fait qu'une fonction qui n'est pas de type 'void' retourne une valeur, que lorsqu'on appelle la fonction on doit stocker cette valeur, etc.)

      − Ligne 10 : tu appelles une fonction qui retourne un entier, mais tu n'utilises pas cet entier (tu fais comme si cette fonction ne retournait rien).

      − Ligne 12 : tu sembles ne pas avoir compris l'utilisation de 'return'. Que crois-tu que fait la ligne ? (Elle retourne *sommeDuTableau au système d'exploitation).

      − Dans le programme principal, sommeDuTableau est un pointeur (qu'il est mal nommé !) qui ne pointe jamais sur rien. Lorsque tu demandes à retourner la valeur pointée (qui n'existe pas) au système d'exploitation, ça ne doit pas beaucoup lui plaire...

      − Ligne 19 : tu retournes 0 au lieu de retourner la somme. C'est de là que vient le « warning » : il prévient que tu n'utilises pas sommeDuTableau (tiens, celui-là est nommé correctement), or tu devrais l'utiliser ligne 19.

      -
      Edité par robun 16 décembre 2018 à 23:14:17

      • Partager sur Facebook
      • Partager sur Twitter
        17 décembre 2018 à 0:27:23

        Petite question au passage, selon toi SinAo a quoi sert le parametre tailledutableau dans ta fonction ?

        Et pourquoi ne l'utilises-tu pas ?

        • Partager sur Facebook
        • Partager sur Twitter

        Tableau Excercice 1 (Apprennez le language C)

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown