Arguments de la ligne de commande

Les arguments d'une ligne de commande sont transmis au programme sous la forme de chaînes de caractères. Le séparateur des arguments est le caractère espace.
La fonction main a deux paramètres : argc de type int et argv de type char * [].
argc donne le nombre d'éléments de la ligne de commande, et argv contient ces éléments sous la forme d'un tableau de chaînes de caractères. argv[0] contient le nom de la commande, argv[i], pour i allant de 1 à argc-1, le ième argument.
Le programme mon_echo (echo.c, Makefile) illustre cela. En voici des exemples d'exécution dans lesquels on notera l'utilisation de l'apostrophe et du caractère antislash '\' :

$ ./mon_echo Bonjour l\'UE Initiation a la programmation !
argc = 8
argv[0] = ./mon_echo
argv[1] = Bonjour
argv[2] = l'UE
argv[3] = Initiation
argv[4] = a
argv[5] = la
argv[6] = programmation
argv[7] = !

$ ./mon_echo Bonjour l\'UE 'Initiation a la programmation' !
argc = 5
argv[0] = ./mon_echo
argv[1] = Bonjour
argv[2] = l'UE
argv[3] = Initiation a la programmation
argv[4] = !

$ mon_echo  Bonjour l\'UE Initiation\ a\ la\ programmation !
argc = 5
argv[0] = mon_echo
argv[1] = Bonjour
argv[2] = l'UE
argv[3] = Initiation a la programmation
argv[4] = !