• [^] # Re: Décomposer les opérations

    Posté par . En réponse au message Je ne comprends pas ce que fait cette fonction. Évalué à 2. Dernière modification le 30 octobre 2019 à 16:41.

    Ca fonctionne ! Que t'attendais-tu à avoir ?

    Il faut faire la différence en durée de vie et portée des variables. En ajoutant le mot clé "static" à la variable i/j dans la fonction dix(), tu changes sa durée de vie mais pas sa portée. La variable n'est accessible que dans la fonction dix()... sauf à utiliser un pointeur.

    Il faut garder à l'esprit que dans ton programme initial, tu avais 3 variables i différentes. Ajouter le mot clé static ne change pas la portée de ces variables et tu as toujours 3 variables i différentes (le changement de nom de i en j n'ayant absolument aucune importance).

    Edit : pardon, ça ne fonctionne pas car tu utilises la fonction zero() comme la fonciton dix() était utilisée initialement, tu retombes donc sur le même problème. Et en plus, j n'est pas déclaré dans la fonction zero() donc ça ne doit même pas compiler.