Chapitre précédantChapitre suivant

Les fonctions

Les fonctions seront très utiles, elles permettent de faire une même action à des endroits différents du programme sans avoir à la copier. Vous en avez déjà vu par exemple printf(), pow() et bien d'autres, maintenant je vais vous apprendre à en créer vous même.
Avant de continuer il vas falloir que vous sachiez à quoi correspond chaque mot:
fonction

Création


Vous en avez déjà créé une sans trop savoir comment elle fonctionnait: la fonction main()
Vous devez déjà écrire le type de la fonction puis son nom suivi de parenthèses, votre fonction est déclarée, à son appel ce qui est entre les accolades, qui suivent la déclaration de la fonction, sera effectué jusqu'à la fin ou jusqu'à rencontrer l'instruction return

void ma_fonction()
{
printf("ma fonction a ete appelee\n");
}


Le type de votre fonction peut être n'importe lequel, pourvu qu'il existe,Il précise quel est le type de ce qui est renvoyé par return.
Si la fonction ne doit rien retourner, le type sera void (vide en français) comme dans la fonction précédente.
Pour l'appeler il vous suffit d'écrire:
ma_fonction();
A ce moment le programme effectuera les instructions situées dans la fonction et une fois terminé il reprendra là ou il s'est arrêté.
Voici une déclaration et un appel de fonction simple

#include <stdio.h>
#include <stdlib.h>

int ma_fonction()
{
printf("ma fonction a ete appelee\n");
}

int main()
{
ma_fonction();//appel la fonction précédement définie
system("PAUSE");
return 0;
}


ma fonction a ete appelee
Appuyez sur une touche pour continuer...


Les paramètres


Il est possible de passer des données à une fonction pour effectuer une action avec. pour cela il suffit de mettre entre les parenthèse la liste des variables reçues dans la déclaration en les séparant par des virgules et en précédant chacune des variables par son type:

int ma_fonction(int un_paramètre,int un_autre)


les variables seront alors crées et initialisées à la valeur envoyée; lors de l'appel il faudra alors envoyer toutes les valeurs attendues par la fonction (il est possible d'envoyer la valeur d'une variable)
Le nom des variables envoyé et reçu peut être le même elles ne seront pas confondues par l'ordinateur.
Voici un exemple:

#include <stdio.h>
#include <stdlib.h>

int ma_fonction(int un_parametre,int autre)// valeurs reçues: 4 et 3
{
printf("valeurs envoyees %d et %d\n",un_parametre,autre);
}

int main()
{
int ma_variable=4, autre=3;
ma_fonction(ma_variable,autre);//valeurs envoyées: 4 et 3
system("PAUSE");
return 0;
}


valeurs envoyees 4 et 3
Appuyez sur une touche pour continuer...


Le retour


lorsque vous voulez quitter la fonction en cours pour retourner à celle qui l'appelée, vous pouvez utiliser l'instruction return si le type de votre fonction est void vous devez écrire:

return;


Si le type de votre fonction vous pouvez retourner une valeur de ce type:

return 25.12;//la fonction est de type double ou float


la valeur de retour d'une fonction pourra être stockée dans une variable:

#include <stdio.h>
#include <stdlib.h>

int main()
{
int ma_variable=4, autre=3;
int resultat=ma_fonction(ma_variable,autre);
printf("ma_variable + autre = %d\n",resultat);
system("PAUSE");
return 0;
}

int ma_fonction(int parametre,int un_autre)
{
printf("valeurs: %d et %d\n",parametre,un_autre);
return parametre+un_autre;
}


Ceci affiche:

valeurs: 4 et 3
ma_variable + autre = 7
Appuyez sur une touche pour continuer...


Chapitre précédantChapitre suivant

Copyright "NOS Corporation", tous droits réservés
pour me contacter polo_asm@hotmail.fr
Valid XHTML 1.0 Strict