home *** CD-ROM | disk | FTP | other *** search
/ DP Tool Club 17 / CD_ASCQ_17_101194.iso / dos / prg / alb_c10 / liminair.txt < prev    next >
Encoding:
Text File  |  1994-10-05  |  11.8 KB  |  254 lines

  1. ===========================================================================      
  2.                              APPRENTISSAGE du C              version ALB_10                
  3.                                 LIMINAIRE                            
  4. ===========================================================================
  5.  
  6.  Réglons d'abord les problèmes juridiques!                
  7. --------------------------------------------------------------------------               
  8.  
  9.               Ce manuel d'apprentissage du langage C a été déposé. 
  10.    Pour ne pas être en infraction avec la loi, vous devez demander une 
  11.    licence d'utilisation de cet ensemble de programmes. Pour cette version 
  12.    la licence est accordée automatiquement et gratuitement à toute personne 
  13.    privée qui par écrit en a fait la demande pour sa formation personnelle. 
  14.    Ce manuel ne doit en aucun cas faire l'objet d'une exploitation commerciale 
  15.    ou collective sans mon autorisation écrite.
  16.  
  17.       Le texte et les programmes sources qui figurent dans ce manuel ne sont 
  18.    conçus que dans un but de formation personnelle et ne se prêtent en aucune 
  19.    manière à des utilisations professionnelles ou commerciales. 
  20.    Il n'est donné aucune garantie quant à leur fonctionnement une fois 
  21.    compilés, assemblés ou interprétés. Je ne pourrais en aucun cas être tenu 
  22.    pour responsable des préjudices de quelque nature que ce soit pouvant 
  23.    résulter de l'utilisation de ces programmes.
  24.  
  25.  Et passons aux choses sérieuses:
  26. ---------------------------------------------------------------------------
  27.  
  28.                                                 Chers amis,
  29.  
  30.       Ce manuel d'apprentissage se limite à l'initiation au C. C'est déjà
  31.    beaucoup. L'étape suivante sera la mise en forme d'un manuel de C++. 
  32.    Puis viendra un dossier consacré à la programmation Windows de Microsoft.
  33.      
  34.       Ce manuel est destiné à ceux qui sans être informaticiens, ont besoin 
  35.    pour réaliser concrètement quelque chose, d'apprendre à lire et écrire 
  36.    aux machines informatiques. Ce n'est donc pas une "Somme" de connaissances
  37.    mais un ensemble de recettes pour permettre à chacun de fabriquer les
  38.    programmes simples dont il peut avoir besoin.
  39.    
  40.       C'est un manuel de TRAVAIL. On ne progresse que par un effort personnel.
  41.    La durée d'apprentissage dépend, bien sûr, du temps que vous pouvez lui
  42.    consacrer. Dans les universités américaines l'étude à temps complet du 
  43.    C/C++ est programmée sur un semestre. Cela peut donner une indication.
  44.  
  45.       Il est difficile pour la majeure part d'entre nous de faire à la fois 
  46.    l'apprentissage d'un langage informatique et de la langue américaine. Ce 
  47.    manuel a pour seul mérite d'être écrit en français. Ne m'associez pourtant
  48.    pas dans votre esprit à cette loi imbécile, d'un énarque glorieux, qui se
  49.    croit le "protecteur" d'une langue parce qu'il écrit des réglements.
  50.  
  51.       Toutes vos critiques seront les bienvenues, formelles, techniques et 
  52.    surtout pour moi celles d'ordre pédagogiques. Je ne vous ferais pas la 
  53.    gueule, vous comprendrez pourquoi en lisant le fichier "lisezmoi". 
  54.    Pourriez vous, pour m'aider à améliorer ce manuel, noter au fur et à 
  55.    mesure de votre progression, toutes les difficultés ou les erreurs que 
  56.    vous rencontrez et bien sûr me les communiquer.
  57.  
  58.    Bien à vous:
  59.                 le 5 octobre 1994       Pierre Blanchet Beaulieu              
  60.                                         21410 ANCEY 
  61.   Liminaire ------------------------------------------------------  page 1
  62.  
  63.  
  64.         
  65.                                                                 
  66.  Au sujet du C.                         
  67. ---------------------------------------------------------------------------
  68.  
  69.       Le C s'est imposé comme le langage universel de la micro-informatique. 
  70.    Son atout majeur, en dehors de sa portabilité, est dans la rapidité de ses 
  71.    programmes et dans sa capacité à construire des applications fortement 
  72.    structurées. L'inconvénient est qu'il ne fait pas de vérifications et que 
  73.    c'est à vous à faire les tests que vous jugez indispensables. 
  74.    
  75.    C'est un peu comme une Ferrari. On nous donne un outil remarquablement 
  76.    puissant mais nous devons prendre nos responsabilités !  
  77.  
  78.  Comment travailler avec ce manuel!                
  79. --------------------------------------------------------------------------
  80.  
  81.       Vous trouverez ce fichier dans le répertoire de base du manuel avec le
  82.    programme articulé en chapitres, chacun dans un sous répertoire avec un
  83.    fichier texte  qui contient le cours comme par exemple CHAP_02.TXT et les 
  84.    fichiers sources des programmes qui lui sont attachés CH02_??.C 
  85.    Ils ont été testés avec les compilateurs TCWin et BC de Borland dans une
  86.    configuration qui sera précisée plus loin. 
  87.    
  88.    Fichiers OEM ou ANSI ?
  89.    ----------------------
  90.    Il existe deux systèmes de traitement de texte. 
  91.    Le plus ancien est celui du DOS qui utilise les caractères ASCII du code 
  92.    437. On l'appelle souvent la version OEM. On peut les lire et les imprimer 
  93.    avec l'éditeur du DOS.
  94.    Le malheur veut que Windows utilise la variante ANSI du code ASCII qui 
  95.    n'utilise pas la même codification au delà du caractère n°128. De plus, il
  96.    est à peu près certain que le DOS ne va plus vivre bien longtemps.
  97.    Tout cela ne change rien pour les américains qui n'ont pas de caractères 
  98.    accentués mais pour nous c'est une autre histoire. Par exemple le "é" ANSI 
  99.    sera lu en OEM "Θ" et le "é" OEM sera figuré par un carré noir en ANSI.
  100.  
  101.    Jean-Bernard LUCAS a développé un produit qui s'appele XTXT et qui permet,
  102.    entre autres choses, de convertir les fichiers texte dans l'une ou l'autre 
  103.    forme. Son programme est gratuit pour un particulier, vous le trouverez 
  104.    chez un bon distributeur de shareware ( n°2536 chez DP TOOL). 
  105.    Il existe aussi dans les C de Borland un excellent programme du nom de 
  106.    fconvert.exe que vous trouverez dans le sous registre bin. 
  107.  
  108.    J'ai choisi pour ma part, et parce que je travaille surtout avec TCWin de 
  109.    vous fournir tous les programmes en ANSI sauf ch14_06.c0 qui ne fonctionne 
  110.    que sous DOS mais les caractères que j'ai utilisés sont tous transposables 
  111.    sans perte. Vous pourrez utiliser sans danger un programme de conversion 
  112.    pour les transposer en OEM. 
  113.    Les fichiers de texte sont par contre en OEM, mais avec des caractères 
  114.    transposables. Si vous les convertissez en ANSI, éliminez au préalable 
  115.    les sauts de page car les éditeurs ANSI ont des longueurs de page qui 
  116.    sont différentes. La largeur peut également varier.
  117.   Liminaire ------------------------------------------------------  page 2
  118.  
  119.  
  120.  
  121.  
  122.    Nous vous conseillons de vous procurer chez un distributeur de produits en 
  123.    shareware le Programmer's File Editor du développeur anglais Alan Phillips. 
  124.    Son utilisation est gratuite pour un particulier. Vous le trouverez sous 
  125.    la référence 1634 chez DP TOOL Club, BP 745, 59657 Villeneuve d'Ascq .
  126.    Il possède un option "Screen Font" qui permet de lire les fichiers texte 
  127.    en OEM ou en ANSI sans conversion explicite. Mais il ne permet pas 
  128.    d'imprimer en ANSI des fichiers OEM. C'est aussi un bon outil de travail
  129.    pour un programmeur non professionnel comme vous ou moi.
  130.  
  131.    Quand à l'impression, on trouve de tout, c'est la bouteille à l'encre. 
  132.    Mais maintenant les imprimantes lisent les caractères ANSI de Windows.
  133.  
  134.  
  135. Comment s'organiser ?
  136. --------------------
  137.    La démarche que je vous propose est de faire d'abord une impression du 
  138.    chapitre à étudier, par exemple CHAP_02.TXT, pour le texte du second 
  139.    chapitre.
  140.    Vous trouverez dans le texte et au fur et à mesure des développements, 
  141.    l'annonce des programmes d'étude en C sous des noms comme CH02_03.C 
  142.    ( chapitre 02 programme 03). 
  143.    Imprimez ces programmes avec l'éditeur de votre logiciel de C, pour 
  144.    pouvoir suivre les commentaires et les explications du fichier texte. 
  145.    Puis compilez, liez et exécutez votre programme.
  146.    J'ai essayé de vous faire utiliser les principales notions avant de
  147.    les définir plus sérieusement et de les étudier dans le cours.
  148.    Dès que vous vous sentirez capables de bidouiller 3 lignes de code, 
  149.    lancez vous. Expérimentez au maximum! 
  150.    
  151.                 On ne progresse en général que par l'erreur! 
  152.                 
  153.         
  154. Quelles options faut il choisir pour le compilateur ?
  155. -----------------------------------------------------
  156.    Je peux vous donner celles que j'utilise avec TC++Win. Elles peuvent 
  157.    vous inspirer pour un autre compilateur. 
  158.    Ce sont des options minimales suffisantes pour des programmes d'étude.
  159.  
  160.    Options/compilateur/génération de code.
  161.         modèle mémoire: Small
  162.         SS=SD: suivant modèle mémoire
  163.         Options: traiter les énum en int
  164.                  caractères unsigned
  165.    Options/compilateur/génération de code avancée.
  166.         virgule flottante: émulation
  167.         options: générer les soulignés
  168.    Options/compilateur/génération de code d'E/S.
  169.         appels optimisés Windows, smartcallbacks
  170.         convention d'appel: C
  171.         options de pile: tester les débordements
  172.                          structure de pile standard
  173.    Options/compilateur/options du C++.
  174.         extensions cpp seulement
  175.         génération modèle Smart
  176.         tables virtuelles Smart
  177.   Liminaire ------------------------------------------------------  page 3
  178.  
  179.         
  180.  
  181.    Options/compilateur/options d'optimisation.
  182.         variables registre automatique
  183.         optimisation: vitesse
  184.    Options/compilateur/option code source.
  185.         ANSI
  186.    Options/compilateur/messages/affichage.
  187.         sélectionnés
  188.         Mettez le maximum de messages d'erreurs ou de warnings
  189.    Options/compilateur/nom.
  190.         Ne touchez rien
  191.    Options/Make.
  192.         Erreurs
  193.         lancer le lieur
  194.         vérifier les autodépendances
  195.    Options/lieur/configuration.
  196.         fichiers Map non générés
  197.         code EXE (Windows avec TCWin)
  198.         configuration: librairies par défaut 
  199.                        et liens sensibles aux diff Maj/min
  200.    Options/lieur/librairies.
  201.         tout statique
  202.    Options/gestionnaire de librairies.
  203.         aucune option
  204.    Options/répertoires
  205.         c:\tcwin\include;c:\tcwin\owl\include;c:\tcwin\classlib\include
  206.         c:\tcwin\lib;c:\tcwin\owl\lib;c:\tcwin\classlib\lib
  207.         c:\tcwin\w
  208.  
  209.  
  210. Utilisation de programmes écrit par des développeurs.
  211. -----------------------------------------------------
  212.     Vous trouverez dans les exemples des morceaux de programme empruntés 
  213.     à des développeurs connus. Certains font partie du domaine public, 
  214.     comme par exemple les programmes et les commentaires du SNIPPET'S 
  215.     ou les CFAQ que je vous engage à vous procurer auprès d'un éditeur 
  216.     de shareware.
  217.     Des développeurs français ont été assez sympa pour m'autoriser à
  218.     utiliser des bouts de leurs programmes. Philippe Pithon, l'auteur 
  219.     du Super Prof d'anglais m'a permis d'imiter son logo pour mon icone.
  220.  
  221. Utilisation de nom de produits protégés par un copyright.
  222. ----------------------------------------------------------
  223. BC, BC++, TC, TC++, TCWin sont des produits de Borland International.
  224. MS-DOS, Windows des produits de Micro-Soft.
  225.   Liminaire ------------------------------------------------------  page 4
  226.  
  227.         
  228.  
  229. Demande de licence pour un particulier.
  230. ---------------------------------------
  231.  
  232.    Je sous-signé
  233.  
  234.    adresse:
  235.  
  236.  
  237.  
  238.    vous prie de lui accorder l'autorisation d'utiliser à titre personnel 
  239.    et pour les besoins de sa formation la version ALB_10 de votre manuel 
  240.    d'apprentissage du C.
  241.  
  242.    Etudes poursuivies et école
  243.    ou profession              :
  244.  
  245.  
  246.    compilateurs utilisés      :
  247.  
  248.                                 signature:
  249.    
  250.    commentaires:
  251.   Fin du liminaire -----------------------------------------------  page 5
  252.         
  253.  
  254.