Nous mettrons à jour notre Politique de confidentialité prochainement. En voici un aperçu.

L'essentiel du langage C

Agencer un projet en C

Testez gratuitement nos 1340 formations

pendant 10 jours !

Tester maintenant Afficher tous les abonnements
Créez un projet avec deux fichiers .c, comportant deux fonctions chacune. Réalisez aussi votre propre bibliothèque afin de mieux organiser votre projet.
06:23

Transcription

Je vais vous parler de l'organisation d'un projet, notamment de l'agencement de plusieurs fichiers, à l'intérieur d'un même projet qui ne doit pas se faire de façon aléatoire. Un projet peut devenir très vite complexe pour plusieurs raisons, D'abord, parce qu'il est collaboratif. Plusieurs personnes peuvent travailler sur ce projet et avoir des morceaux de code à écrire de même chacun de leur côté et il faut tout faire coïncidé ensemble. Le projet doit être exportable, c'est-à-dire il doit être totalement décorrélé de l'IDE. Ce n'est pas parce que vous avez fait votre projet sous Code Blocks, que je ne peux pas prendre la source et l'exécuter sur un autre compilateur. C'est une aberration, ça ne doit pas être arrivé. Beaucoup de fonctions peuvent être créées. Donc, une pléthorique de fichiers C, qui contiennent ces fonctions vont apparaître. Et de plus, il faut que votre projet soit suffisamment scindé de façon à le rendre flexible et modulable pour qu'il puisse se périniser et être mis à jour au fur et à mesure. Comment se passe la répartition des fichiers à l'intérieur d'un projet ? Donc, déjà le projet doit être totalement indépendant de l'IDE. Vous avez les Header files. Les header files, en fait, contiennent toutes les déclarations qui sont à l'intérieur des fichiers C. Ah vous pouvez avoir plusieurs header files. Vous pouvez avoir plusieurs fichiers C, comme nous voyons ici. Et vous pouvez même avoir des interactions entre les headers. Comment va s'effectuer l'organisation des fichiers ? Vous allez avoir votre fichier qui contient le main. A l'intérieur, vous faites l'appel de plusieurs fonctions. Ces fonctions, vous allez les ranger dans un autre fichier.c qui s'appellera par exemple fonctions, où vous en ferez la description complète. Une fois ceci fait, vous passez à la création du fichier header file. Donc, bibliotheque.h par exemple, vous allez mettre le prototype de vos fonctions ce qui va alléger le main. En plus, vous allez encore alléger votre fichier, en incluant toutes les bibliothèques standards dont vous avez besoin. Plus, vos bibliothèques personnelles si besoin. Et vous allez faire vos déclarations aussi de toutes vos define. L'organisation dans le main s'en voit largement allégée. Finalement, vous retrouvez dans votre fichier C avec le strict minimum, l'appel de vos fonctions, plus l'inclusion de bibliotheque.h. Ce qui peut arriver ? C'est que le compilateur fasse une partie Et c'est ce que fait Code Blocks et nous allons voir pourquoi. Ensuite, votre projet devient dépendant de l'IDE. Ça, c'est un vrai problème aussi. Du coup, il devient moins portable. Et il ne respecte pas les règles de l'art du C et nous allons faire une démonstration avec Code Blocks. J'ai créé trois fichiers. Donc, le main dans lequel je retrouve, en fait, dans ma fonction principale, juste l'affichage, en fait, du file pour dire que je suis bien dans la fonction main. Et puis, j'appelle quatre fonctions, que je n'ai même pas déclarées. Voilà et je me paye. En plus le luxe de mettre sous-commentaires des directives préprocesseur stdio et stdlib.h C'est qui quand même à combe, c'est-à-dire que normalement on a même la fonction printf, on sait pas ce que c'est. Donc, nous allons voir dans fichier un et deux, je fais exactement la même chose, je commente l'inclusion des bibliothèques Donc, en fait, rien ne doit fonctionner. Et même chose, donc, pour la fonction trois et quatre que je n'ai même pas déclarées au niveau de prototype. Voyez, il n'y a strictement rien. Et donc, nous avons déjà compilé. Et regardonsun un peu ce qui se passe. Ça fonctionne. Alors, ceci est ma fonction principale qui est exécutée dans mon fichier et j'ai le chemin d'accès. Et je suis bien dans main.c 07_08_main.c Alors, ici ma fonction un et deux je vais faire la même chose, je vérifie ah, vraiment ! parce que là tout est fait pour que ça ne fonctionne pas dans un moment Et là, j'ai file de maPremiereFonction. Donc, ceci est ma première fonction, c'est exécutée et c'est fonction1_et_2 Et j'ai la même chose pour le reste. fonction1_et_2, 3_et_4 Donc, tout c'est passé normalement C'est quand même un comble. Par contre, j'ai compilé. Nous sommes gratifiés quand même, d'une paire de warning. Je n'ai pas dit d'erreurs, de warning. C'est-à-dire que Code Blocks a pris la main pour vous a dit "Bon ! Lui ne sait pas trop organiser ses fichiers à l'intérieur d'un projet. Donc, bah je vais le faire pour lui mais je quand même lui indiquer qu'il y a des déclarations qui sont implicites". Bah oui, voilà, celle-ci celle-ci, celle-ci, celle-ci à aucun moment, j'ai déclaré le prototype des fonctions. printf, finalement, je ne sais même pas que ce que c'est. Bah, évidemment que je ne sais pas puisque j'ai passé sous silence stdio et stdlib. Tout ça pour dire, en fait, que votre code là, tel qu'il est fait, alors il se continue en gaiement. Votre code là n'est absolument pas portable, ça fonctionne sous Code Blocks. Mais, si vous faites un copier-coller où vous en voyez directement vos sources chez quelqu'un qui utilise un autre compilateur C ANSI, ça ne peut pas fonctionner C'est totalement impossible.

L'essentiel du langage C

Comprenez les concepts de base du langage C. Développez de simples applications en mode console, afin de comprendre les rouages d’un des langages les plus utilisés au monde.

7h51 (98 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Spécial abonnés
Date de parution :12 janv. 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !