Procédure en C

Problème 1: La notion de procédure n'existe pas en C alors quelle est présente dans beaucoup de langages et en algorithmique. Une procédure ne retourne pas de valeur mais rend des résultats au travers des paramètres (en sortie). Donc une procédure est une instruction et non une expression.

Solution:
Une procédure sera traduite en C par une fonction de type void (ne retourne pas de valeur).

exemple:

/* ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 * Nom de la procédure : 
 accueilBis
 * Description : Affiche un mesage d'accueil en salle machine. La lettre du couloir (leCouloir) et le numéro de salle (numeroSalle) sont les
 *                        paramètres formels d'entrée, leCouloir est une lettre quelconque, numeroSalle est supérieur ou égal à 0
                                              *
 *----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
*/

void  accueilBis(char leCouloir, int numeroSalle)  /* leCouloir est la lettre du couloir et numerosalle (>0) est le numéro de la salle */
{
  printf("\nBienvenu en salle machine %c%d  de l'IUT de Villetaneuse",
leCouloir, numeroSalle);
  printf("\nVous êtes sous LINUX");
  printf("\nVous êtes responsale du matériel, prenez en soin");
  printf("\nIl est interdit de boire et de manger dans les salles machines");

}
/* fin de la procédure accueilBis */

Problème 2: La notion de paramètre de sortie et d'entrée-sortie n'existe pas en C. Tous les passages de paramètres effectifs vers les paramètres formels se font par valeur (il y a copie de la valeur de chaque paramètre effectif dans chaque paramètre formel). Toute modification des paramètres formels dans la procédure n'a aucun effet sur l'environnement de l'appelé. Il n'y a donc que des paramètres d'entrée.

Solution:
On va passer des adresses comme paramètres d'entrée et on va travailler dans la procédure par indirection vers les variables de l'environnement de l'appelant ...
suivant
        plan