Programmation bas niveau (BNV) Help

Cours : Prototypage de la fonction main()

Pour rappel la fonction main() est la porte d'entrée de votre programme. Mais il existe plusieurs manières de la déclarer selon les arguments que vous voulez récupérer au moment de l'exécution de votre programme.

Prototypage sans arguments

Le cas le plus classique et que vous avez utilisé jusqu'à présent :

int main(void);

ou

int main();

Prototypage avec arguments

Lors de l'exécution de votre programme ./nom_de_votre_executable vous pourrez parfois être améné à ajouter des arguments pour préciser une situation de départ. Par exemple : ./nom_de_votre_executable arg1 arg2 arg3

Pour avoir accès à ce tableau d'arguments, vous devez déclarer votre fonction main() comme suit :

int main(int argc, char **argv);
  • argc correspond au nombre (int) d'arguments reçu au moment de l'exécution.

  • argv correspond au double tableau (char **) d'arguments également reçus au moment de l'exécution.

Prototypage avec arguments et environnement

Même principe que précédemment, sauf qu'en plus des arguments, vous pourrez accéder à un double tableau qui contient les variables d'environnement.

Pour ce faire, vous devez déclarer votre fonction main() comme suit :

int main(int argc, char ** argv, char **env);
  • env correspond au double tableau (char **) qui contient les variables d'environnement.

13 October 2025