cours de langage c: les fonctions
BIENVENUE SUR LE SITE DE LA TECHNOLOGIE.
Accueil                                  Livre d'or                                  Nous contacter                                             forum
Auteur
SAID MOHAMED

Membre

Vous n êtes pas connectés
Se connecter
s inscrire


Annonces

Ce site est destiné à tous les technologues, les étudiants scientifiques, les élèves scientifique et toute personne qui s'interesse de la nouvelle technologie.

  Tous ce que j'ai essayé de faire, c’est de vous donner les cours nécessaires dans le domaine de la technologie : électronique, informatiques et télécommunication .

   Tous mes cours sont gratuits alors il faut bien accepter et profiter cette offre si délicieuse.

les cours
électronique
analogique
numerique
de puissance

realisation des circuits électronique

informatique
programmation
microprocesseur
réseaux


télécommunications
téléinformatique
réseaux telecoms

système de télécommunication
^

LES FONCTIONS

Comme vous le voyez dans le titre, dans ce chapitre on va parler du mot fonction.
(Mais les fonctions, on a vu ça.)
Tu n’arrêteras jamais  de dire ça si tu as bien compris les chapitres précédents. Eh bien je suis d’accord avec vous, on a vu la structure d’une fonction, la fonction main…
Mais est ce que vous savez qu’on peut créer ses propres fonctions ?
Bah  C’est possible. D’ailleurs on va le voir  dans ce chapitre. N’ayez pas peur, pas des nouveaux, c’est sont des choses qu’on a déjà vu comme vous le dites. C’est pourquoi on ne va pas trop rester ici pour faire des répétitions. 

     Vous devez mettre en tête que ce chapitre est beaucoup plus important dans la mesure où si nous voulons réaliser un programme si long, il est nécessaire d’utiliser plusieurs fonctions. Pour cela, la notion de création d’une fonction et d’appel d’une fonction doit être bien acquise.

1) Création d’une fonction

 

Pour créer une fonction, voici les procédures à suivre :

  • Prototype de la fonction :
il s’agit d’une description de la fonction à définir, destinée au compilateur. Il indique au compilateur certains données qui lui permettent de vérifier à chaque appel de la fonction que le nombre et le type de paramètres, ainsi que la valeurs de retour  sont corrects.
Il est identique à l’entête d’une fonction et se termine par un point virgule (;).

syntaxe:   type_fonction nom_fonction(type_argument nom_argument1, type_argument nom_argument2,..);
 exemple: int mafonction(int a,int b);

  • definition de la fonction :
-l'entête:syntaxe: identique à celle du prototype: type_fonct nom_fonction(parametres1,parametres,...).

type fonction(type_fonct): il s'agit du type de valeur renvoyé par la fonction c'est a dire le type de données que la fonction retournera au programme appelé. il peut être char, int, long, double, void.
nom de la fonction( nom_fonct) : on utilise les mêmes règles que pour les noms de variables.
argument: donnée transmise à la fonction par le programme.
exemples:
code C:
 intmafonction(int a, int b)      code C:  void mafonction( int a, int b)   code C: void mafonction( void)

.    .         .

-corps de la fonction:
il est delimité par 2 accolades.
A l’intérieur de ces accolades, on trouve les instructions et les variables locales.
exemple:
                                                                      code C:
int mafonction( int x, int y)
{
int a , b;
...

}

Ici a et b sont des variables locales à la fonction "ma fonction".

-renvoie de valeur:  on utilise la fonction "return" pour renvoyer la valeur si le type de la fonction est différent de void car avec" void", il y a pas de valeur retournée.

exemple:                                                                                                                               
                                                                        code C:
 

int mafonction(int x)
{
int a,
...
return a;
}
 

2) Appel d’une fonction

Programme principal : 

Ce schéma nous montre comment on appelle les fonctions à l’intérieur de la fonction main.

Ce qui se passe quand le programme principale appelle une fonction, les instructions de la fonction s’exécutent d’abord avant la continuité d’autre chose.

Ici nous allons voir deux méthodes utilisées pour appeler une fonction. Avant d’attaquer ces deux méthodes, nous devons savoir comment se fait le passage d’arguments à une fonction.

 Soit par exemple :

L’en-tête  de la fonction : int mafonction (int x, in y, int z)
L’appel de la fonction : mafonction(a,b,c)
Ici a sera attribué int x, b à int y et c à int z. les arguments sont toujours attribués dans l’ordre aux paramètres.
Si on a déjà compris ça, rien n’est difficile pour le reste.

Voici les deux méthodes qu’on vous a parlé :

1ère méthode : nom de la fonction suivi de la liste de d’arguments entre parenthèses, dans une instruction.
Exemple : nombretotaledesboules (17, 20,79)
Pour mieux comprendre voici un exemple,code source :

                 code C/C++
#include <stdlib.h>
#include <stdio.h>

void nombretotaldesboules( int boulesbleux, int boulesrouges, int boulesverts)
{ int nombretotaldesboules ;
nombretotaldesboules = boulesbleux + boulesrouges + boulesverts;
printf("le nombre total des boules est %d\n",nombretotaldesboules);
}
int main()
{ nombretotaldesboules(17,48,75);/*Ici on a appelé la fonction nombretotaldesboules,
17 est attribué aux boulesbleux, 48 aux boulesrouges et 75 aux boulesverts */
system("pause");
return 0;

}
Note bien:
Si la  fonction renvoie une valeur, celle ci est ignorée.

2ème méthode : ici on utilise la fonction étant une expression.

Exemple :

printf("le nombre total des boules est %d\n",nombretotaldesboules(17,48,75));

Pour mieux comprendre voici un exemple,code source :

                        code C/C++:

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

int nombretotaldesboules( int boulesbleux, int boulesrouges, int boulesverts)
{  
return boulesbleux + boulesrouges + boulesverts;
}
int main()
{
printf("le nombre total des boules est %d\n",nombretotaldesboules(17,48,75));
system("pause");
return 0;

}

Dans notre exemple, vous remarquer très bien que la fonction nombretotaldesboules est appelée dans la fonction printf.

Remarque : lorsqu’une fonction s’appelle elle-même directement ou indirectement, on parle de récurrence.

 

 

Il y a actuellement 5 visiteurs connectés sur le site de la technologie !





|Copyright © Samomoi Technos | Chartes du site | Facebook|    Twitter