Langage C : un fichier source

Introduction

Après avoir créé un nouvel espace de travail et lui avoir ajouté un nouveau projet, nous allons créer un nouveau fichier dans lequel nous introduirons le code source.

Si nous utilisons visual C++, nous y parvenons par le menu File/New...
Une fenêtre permet la sélection par l'onglet Files d'un C++ Source File, qu'il faut nommer et ajouter au projet. Ce fichier source peut porter le même nom que le projet, car l'extension .cpp (généralement utilisé pour le C++, et .c pour le C) lui est automatiquement ajoutée, alors que le fichier du projet est suivi de l'extension .dsp.
Comme localisation, dans le cadre de nos cours nous grouperons les fichiers source dans un unique répertoire nommé src, afin de gérer plus aisément le travail à domicile.

Qu'est-ce qu'un fichier source?

Un fichier source est un simple fichier texte non formaté (uniquement les caractères du code ASCII, donc pas sous une extension telle que ".doc").

Que comporte un programme en C?

Un programme en C comporte différentes fonctions, qui réalisent des opérations sur des données. Par programme, il doit exister une et une seule fonction qui portera le nom de "main" (qui signifie principale en anglais).

Le programme se présente donc de la manière suivante:


Code c (main) (4 lignes) :
  1. void main (void)
  2. {
  3. instructions;
  4. }

Remarque:

Le langage C est sensible à la casse:

  • main est la fonction principale du programme.
  • MAIN est une autre fonction.

Les commentaires

Quelques règles en C:

  • /* indique le début du commentaire.
  • */ indique la fin du commentaire.
  • Un commentaire peut prendre plusieurs lignes.
  • Un commentaire se place n'importe où dans le code, mais il ne peut couper un mot du programme.
  • Les commentaires ne peuvent contenir le signe de fin de commentaire.
  • Depuis la norme C99, nous avons la la possibilité de placer des commentaires sur une seule ligne en C comme en C++.

Code c (commentaires) (11 lignes) :
  1. /*Exemple de commentaire en C*/
  2. /*
  3. Le commentaire peut se trouver
  4. sur plusieurs lignes
  5. */
  6. instruction1;/*Correct*/instruction2;
  7. instruct/*Mauvais commentaire*/ion3;
  8. /*La fermeture */ ne peut être contenue dans le commentaire*/
  9. instruction4;
  10. //Commentaire sur une ligne (C++)
  11. instruction5

Exemple de fichier source

Ce qui suit est un fichier source (traitement_a.c) qui nous permet d'avoir une première vue d'ensemble. Pas de panique, ce fichier est découpé en blocs plus explicites à la page suivante.

  1. /* traitement_a.c
  2. création du tableau avec introduction de valeurs
  3. impression du tableau de la composante i jusqu' à la composante q */
  4. #include <stdio.h>
  5. #define NMAX 20
  6. void lect (int z[],int &n)
  7. void main (void) /* fonction d'impression des val entre les composantes i et q*/
  8. {
  9. int t[nmax];
  10. int i=0,q=0,nmax,n;
  11. int continu =0;
  12. lect(t,n);
  13. printf ("\nintroduire la composante i\n(valeur entre 0 non compris,"
  14. "et %d non compris):", n);
  15. scanf ("%d", &i);
  16. printf ("\nintroduire la composante q\n(valeur entre %d non compris,"
  17. "et %d non compris)\nq > i&nbsp;:",i, n);
  18. scanf ("%d", &q);
  19. if (i<q)
  20. for (nmax=i; nmax<=q; nmax++)
  21. printf ("%d\n", t[nmax]);
  22. else
  23. printf ("\n\n\nATTENTION&nbsp;: q <= i !!!");
  24. while (i<=q && continu==1)
  25. {
  26. printf ("\n\n\nvoulez-vous continuer ?\n1 pour continuer&nbsp;:");
  27. scanf ("%d", &continu);
  28. while (continu==1)
  29. {
  30. printf ("\nintroduire la composante i\n(valeur entre 0 non compris,"
  31. "et %d non compris):", n);
  32. scanf ("%d", &i);
  33. printf ("\nintroduire la composante q\n(valeur entre %d non compris,"
  34. "et %d non compris)\nq > i&nbsp;:",i, n);
  35. scanf ("%d", &q);
  36. if (i<q)
  37. for (nmax=i; nmax<=q; nmax++)
  38. printf ("%d\n", t[nmax]);
  39. else
  40. printf ("\n\n\nATTENTION&nbsp;: q <= i !!!");
  41. }
  42. }
  43. }
  44. void lect (int z[],int &n) /* sous fonction; permet l'affectation des val du tableau*/
  45. {
  46. int a;
  47. printf("\nintroduire un nbre\n0 pour terminer&nbsp;:");
  48. scanf ("%d", &a);
  49. n=0; /* afin de remplir le tableau depuis la 1ère case */
  50. z[n]=a;
  51. n++;
  52. while (a && n<NMAX) /* eviter de dépasser le nbre d'espaces mem prévus */
  53. {
  54. printf("\nintroduire un nbre\n0 pour terminer&nbsp;:");
  55. scanf ("%d", &a);
  56. z[n]=a;
  57. n++;
  58. }
  59. }

Réseaux sociaux

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher les interactions avec les réseaux sociaux sur ces pages.

 

Nuage de mots clés

10 mots clés dont 0 définis manuellement (plus d'information...).

Avertissement

Cette page ne possède pas encore de mots clés manuels, ceci est donc un exemple automatique (les niveaux de pertinence sont fictifs, mais les liens sont valables). Pour tester le nuage avec une page qui contient des mots définis manuellement, vous pouvez cliquer ici.

Vous pouvez modifier vos préférences dans votre profil pour ne plus afficher le nuage de mots clés.

 

Astuce pour imprimer les couleurs des cellules de tableaux : http://www.gaudry.be/ast-rf-450.html
Aucun commentaire pour cette page

© Ce document issu de l′infobrol est enregistré sous le certificat Cyber PrInterDeposit Digital Numbertection. Enregistrement IDDN n° 5329-1
Document créé le 19/03/02 00:00, dernière modification le Mercredi 28 Juin 2017, 14:26
Source du document imprimé : http:///www.gaudry.be/c-fichier-cpp.html
St.Gaudry©07.01.02
Outils (masquer)
||
Recherche (afficher)
Recherche :

Utilisateur (masquer)
Apparence (afficher)
Stats (afficher)
15838 documents
455 astuces.
550 niouzes.
3107 definitions.
447 membres.
8121 messages.

Document genere en :
0,13 seconde

Mises à jour :
Mises à jour du site
Citation (masquer)
Faire rire, c'est faire oublier. Quel bienfaiteur sur la terre, qu'un distributeur d'oubli !

Victor Hugo [Extrait de L'Homme qui rit]
 
l'infobrol
Nous sommes le Mercredi 22 Novembre 2017, 17:21, toutes les heures sont au format GMT+1.00 Heure, heure d'hiver