2.1 compiler un programme C simple

L’exemple classique de programme pour le langage C est Hello World.Voici le code source de notre version du programme:

#include <stdio.h>intmain (void){ printf ("Hello, world!\n"); return 0;}

Nous supposons que le code source est stocké dans un fichier appelé ‘bonjour.c’.Pour compiler le fichier  » bonjour.c ‘ avec gcc, utilisez la commande suivante:

$ gcc -Wall hello.c -o hello

cela compile le code source dans ‘Bonjour.c ‘au code machine etstores dans un fichier exécutable ‘hello’., Le fichier de sortie pour le code machine est spécifié à l’aide de l’option -o. Cette option est généralement donnée comme dernier argument sur la ligne de commande. S’il est isomitted, la sortie est écrite dans un fichier par défaut appelé ‘a. out’.

notez que si un fichier portant le même nom que le fichier exécutable existe déjà dans le répertoire courant, il sera écrasé.

L’option -Wall active tous les compilerwarnings les plus couramment utilisés—il est recommandé de toujours utiliser cette option!,Il existe de nombreuses autres options d’avertissement qui seront discutées dans les chapitres ultérieurs, mais -Wall est le plus important. GCC ne produira aucun avertissement à moins qu’ils ne soient activés. Les avertissements du compilateur sont une aide essentielle pour détecter les problèmes lors de la programmation en C et c++.

dans ce cas, le compilateur ne produit aucun avertissement avec l’option-Wall, car le programme est complètement valide. Code Source qui ne produit aucun avertissement est dit pour compiler proprement.,

pour exécuter le programme, tapez le nom du chemin de l’exécutable comme ceci:

$ ./helloHello, world!

cela charge le fichier exécutable en mémoire et provoque le CPU pour commencer àexécuter les instructions qu’il contient. Le chemin ./fait référence au répertoire courant, donc ./hello charge et exécute le fichier exécutable ‘hello’ situé dans le répertoire courant.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *