Voici un simple fichier source :
/* * salou.c - Source du programme salou * * Ce programme montre comment traiter les arguments d'un programme * (boucle "for (i = 0; i < argc; i++)") et comment utiliser des * fonctions definies dans le meme fichier source. * */ #include <stdio.h> #include <string.h> main (int argc, char **argv) { int i; printf ("\n"); /* Traitement des arguments passes au programme */ if (argc > 10) { printf ("Trop d'arguments ! Essayez %s -h pour avoir l'aide\n", argv[0]); printf ("\n"); printf ("*********************************\n"); printf ("Usage : %s <arguments>\n", argv[0]); printf ("**********************************\n"); exit (1); } for (i = 0; i < argc; i++) { if ((strcmp ("-h", argv[i]) == 0) || (strcmp ("--help", argv[i]) == 0)) { printf ("aide demandee...\n"); printf ("y'a qu'a demander !...\n"); printf ("et faut pas hésiter !...\n"); printf (" -h, --help affiche l'aide\n"); printf (" -n, --name affiche le nom de l'auteur\n"); } /* if */ if ((strcmp ("", argv[i]) == 0)) { printf ("%s programme par Mathieu DECORE, 1998\n", argv[0]); } /* if */ } /* for */ printf ("\n"); printf ("*********************************************\n"); printf ("Bonjour à celui qui lira ça \n"); printf ("**********************************************\n"); /* Exemple d'utilisation d'une fonction definie dans le programme * Cette fonction, "min", renvoit le minimun de deux nombres : * min(a, b) renvoit a si a < b, et renvoit b sinon (si b < a) */ printf ("min 3, 5 : %d\n", min (3, 5)); printf ("min 8, 5 : %d\n", min (8, 5)); /* Affichage de tous les arguments passes au programme */ for (i = 0; i < argc; i++) printf ("argc %d argv[%d] %s \n", argc, i, argv[i]); } /* Definition d'une fonction "min" pour l'exemple */ int min (int a, int b) { if (a < b) return a; else return b; }
Pour compiler ce programme, il suffit d'entrer :
gcc -o salou salou.c
L'exécutable sera salou
, comme précisé juste après l'option -o.