Exood4 Studio - Video Game Development, Toulouse (France)
Exood4 Studios Exood4 Tutorials

   
L a n g a g e   C

L a   f o n c t i o n   m a i n






 Il est pratique de paramétrer l'exécution d'un programme par des arguments fournis lors de son appel :


Exemple : quake3.exe +set fs_cdpath D:\Quake3\

 Les arguments de la ligne de commande peuvent être récupérés via les paramètres de la fonction main. Cette dernière peut être définie avec deux paramètres : un entier et un tableau de chaînes de caractères. Le premier est le nombre d'arguments fournis et le deuxième contient les arguments (le nom du programme est considéré comme le premier argument). Son en-tête est alors de la forme :

main (int argc, char *argv[]) /* ou main (int argc, char **argv) */

 La fonction main du programme reçoit, pour l'exemple précédent, 4 pour argc, argv[0] pointe vers la chaîne "quake3.exe", argv[1] pointe vers "+set", argv[2] pointe vers "fs_cdpath", argv[3] pointe vers "C:\Quake3\" et argv[4] vaut NULL.

 Un programme peut renvoyer un code entier de fin d'exécution au processus père. Cet entier n'est rien d'autre que la valeur renvoyée par la fonction main (ou par toute autre fonction de terminaison d'exécution, comme exit). Par convention, un code nul indique que l'exécution s'est bien passée, et un code non nul est un code d'erreur :

int main (int argc, char *argv[])
{
 if (argc < 2)
 {
 erreur ();
 exit (1); /* erreur, aucun argument */
 }

 /* traitement des arguments argv */
 ...

 return 0;    /* l'exécution s'est bien déroulée */
}



    Page suivante