Fonctions, tableaux et pointeurs

Résolu
BougaBouga78 Messages postés 95 Statut Membre -  
BougaBouga78 Messages postés 95 Statut Membre -
Bonjour bonjour,

Voila j'ai un problème très simple, sur un tout petit détails je pense, mais qui m'est indispensable pour continuer dans le C.
Une fonction qui doit faire la somme des valeurs d'un tableau, tout simple.

int sommeTableau(int tableau[], int tailleTableau)
{
    int <underline>*somme = &somme</underline>;
    int i;

    for(i = 0 ; i < tailleTableau ; i++)
    {
        <bold>*</bold>somme = *somme + tableau[i];
    }

    return *somme;
}

"somme" est la variable se trouvant dans la fonction main, *somme est le pointeur créer dans la fonction sommeTableau, pour modifier la valeur de la variable du même nom....
La fonction main:

int main()
{
    int tableau[5] = {12,4,57,35,1};
   <underline>int somme = 0</underline>;

    somme = sommeTableau(tableau,5);

    printf("Somme du tableau = %d",somme);

    return 0;
}
Alors voilà, la fonction est censé me renvoyer 109, mais ce n'est pas le cas, à cause d'une erreur qui m'échappe....
Merci pour votre aide :D

"Quelque chose de trop facile, c'est forcément une arnaque...."
Boris Hanus


EDIT : Ajout du LANGAGE dans les balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
A voir également:

1 réponse

NHenry Messages postés 15479 Statut Modérateur 366
 
Pourquoi as-tu besoin de créer à partir de la variable du main.

dans ta fonction, tu fais ta somme, puis tu fais un
return somme;
0
BougaBouga78 Messages postés 95 Statut Membre 2
 
Oui.....oui tout à fait, je complique pour rien....merci bien :)
0
fiddy Messages postés 11653 Statut Contributeur 1 847
 
Et somme n'a même pas besoin d'être un pointeur ;-).
0
BougaBouga78 Messages postés 95 Statut Membre 2
 
C'est ce que j'ai remarqué, après coup :D
0