Section courante

A propos

Section administrative du site

Les procédures et les fonctions ont pour objectif d'éviter les répétitions de suite d'instructions mais en ayant l'avantage de voir définir des paramètres pouvant changer dans cette suite d'instructions. Il va de soit, que bien que la chose soit autorisé par la syntaxe du langage de programmation C, il est rarement efficace de définir une fonction avec une seule instruction et des paramètres identiques au paramètres appelant. Si cette situation se produit, on utilisera plutôt la directive de compilation «#define» par exemple. Par contre, si vous souhaitez écrire des procédures et des fonctions, dans le langage de programmation C, il n'y a pas vraiment de différence dans la façon de les écrire. Ainsi, la seule façon de distinguer une fonction d'une procédure c'est la présence ou l'absence d'une valeur de retour.

Procédure

Voici tout d'abord la syntaxe d'une procédure :

void nomdeprocédure(paramètres) {
  instruction_exécuté1;
  instruction_exécuté2;
  instruction_exécuté3;
  ...;
}

Remarque

Exemple

Cet exemple permet de montrer un appel d'une fonction ne retournant aucune valeur :

Essayer maintenant !
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void mafonction(void) {
  5.     printf("Fonction sans retour de valeur !\n");
  6. }
  7.  
  8. int main()
  9. {
  10.     mafonction();
  11.     return 0;
  12. }

on obtiendra le résultat suivant :

Fonction sans retour de valeur !

Fonction

La fonction de son côté nécessite l'utilisation d'au moins un mot réservé «return» contenu dans le corps de la routine. Il n'y a pas de position obligatoire n'y de nombre limite d'utilisation de l'instruction «return». Voici sa syntaxe :

typederetour nomdefonction(paramètres) {
  instruction_exécuté1;
  ...;
  return valeurderetour
}

Exemple

Cet exemple permet de montrer un simple retour de fonction :

Essayer maintenant !
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int mafonction(int a) {
  5.     return a;
  6. }
  7.  
  8. int main()
  9. {
  10.     printf("Valeur = %i\n",mafonction(144));
  11.     return 0;
  12. }

on obtiendra le résultat suivant :

Valeur retourner = 144

Remarques



Dernière mise à jour : Mardi, le 28 juillet 2015