FAQ PascalConsultez toutes les FAQ
Nombre d'auteurs : 10, nombre de questions : 402, dernière mise à jour : 7 janvier 2018 Ajouter une question
Bienvenue dans la F.A.Q. Pascal !
Celle-ci rassemble les réponses aux questions les plus fréquemment posées sur le langage Pascal et tous ses outils de programmation. Si elle n'a pas pour vocation de répondre à toutes les interrogations possibles, elle reste une bonne base de connaissances sur le Pascal, et ne demande qu'à être enrichie par vos expériences personnelles.
Nous vous invitons à proposer vos propres questions/réponses directement dans la FAQ ou, si vous souhaitez apporter une modification à une question/réponse existante, à la poster dans le fil de discussion renseigné ci-dessous.
Nous vous souhaitons une bonne lecture !
L'équipe Pascal.
-
4.1. Turbo Pascal
(254)
-
4.1.1. Turbo Pascal Généralités
(12)
- Peut-on créer un programme Windows avec Turbo Pascal ?
- Quelles sont les directives de compilation ?
- Quels sont les intervalles de valeurs des types entiers de Turbo Pascal ?
- Comment éviter que l'écran ne défile quand on écrit en bas à droite ?
- Comment détecter l'appui sur les touches étendues du clavier ?
- Comment vider le tampon du clavier ?
- Comment imprimer du texte ?
- Comment imprimer du texte mis en forme ?
- Comment ajouter du son à un programme ?
- Comment initialiser l'unité Graph ?
- Comment exécuter un programme externe ?
- Comment modifier ou éteindre le curseur texte ?
-
4.1.2. Turbo Pascal Installation, configuration et fonctionnement de l'EDI
(9)
- Où télécharger gratuitement Turbo Pascal 7 ?
- Comment installer Turbo Pascal sous Windows XP ou Windows 2000 ?
- Comment puis-je passer rapidement d'une fenêtre de code à une autre ?
- Pourquoi l'éditeur n'applique-t-il pas la coloration syntaxique pour certains fichiers ?
- Comment faire en sorte que l'EDI mémorise la configuration courante ?
- Comment faire en sorte que l'EDI rouvre automatiquement les derniers fichiers utilisés ?
- Comment fixer les répertoires d'ouverture et d'enregistrement ?
- Pourquoi Turbo Pascal ne crée-t-il pas d'exécutable sur le disque ?
- Dois-je absolument utiliser l'EDI pour compiler mes programmes ?
- 4.1.3. Débogueur intégré (4)
- 4.1.4. Unités et bibliothèques spécifiques (4)
-
4.1.5. Programmation avancée en Turbo Pascal
(13)
- Comment allouer plus de mémoire que les 640 kb de mémoire conventionnelle ?
- Comment réduire la mémoire utilisée par un programme ?
- Comment tester si un disque existe sur le système ?
- Comment détecter l'appui sur les touches de contrôle ?
- Comment détecter l'appui sur les touches F11 et F12 ?
- Que signifient appel far et appel near ?
- Comment détourner une interruption ?
- Comment inclure des instructions 32 bits dans un programme ?
- Comment récupérer en Assembleur un paramètre transmis par adresse ?
- Comment une fonction écrite en Assembleur peut-elle retourner une valeur ?
- Comment ajouter un module objet écrit en Assembleur à un programme ?
- Une variable définie dans un module objet peut-elle être utilisée dans le programme ?
- Comment inclure du code écrit en C dans un programme Pascal ?
-
4.1.6. Erreurs de compilation
(163)
- Erreur de compilation 1 - Out of memory
- Erreur de compilation 2 - Identifier expected
- Erreur de compilation 3 - Unknown identifier
- Erreur de compilation 4 - Duplicate identifier
- Erreur de compilation 5 - Syntax error
- Erreur de compilation 6 - Error in real constant
- Erreur de compilation 7 - Error in integer constant
- Erreur de compilation 8 - String constant exceeds line
- Erreur de compilation 10 - Unexpected end of file
- Erreur de compilation 11 - Line too long
- Erreur de compilation 12 - Type identifier expected
- Erreur de compilation 13 - Too many open files
- Erreur de compilation 14 - Invalid file name
- Erreur de compilation 15 - File not found
- Erreur de compilation 16 - Disk full
- Erreur de compilation 17 - Invalid compiler directive
- Erreur de compilation 18 - Too many files
- Erreur de compilation 19 - Undefined type in pointer def
- Erreur de compilation 20 - Variable identifier expected
- Erreur de compilation 21 - Error in type
- Erreur de compilation 22 - Structure too large
- Erreur de compilation 23 - Set base type out of range
- Erreur de compilation 24 - File components may not be files or objects
- Erreur de compilation 25 - Invalid string length
- Erreur de compilation 26 - Type mismatch
- Erreur de compilation 27 - Invalid subrange base type
- Erreur de compilation 28 - Lower bound greater than upper bound
- Erreur de compilation 29 - Ordinal type expected
- Erreur de compilation 30 - Integer constant expected
- Erreur de compilation 31 - Constant expected
- Erreur de compilation 32 - Integer or real constant expected
- Erreur de compilation 33 - Pointer type identifier expected
- Erreur de compilation 34 - Invalid function result type
- Erreur de compilation 35 - Label identifier expected
- Erreur de compilation 36 - BEGIN expected
- Erreur de compilation 37 - END expected
- Erreur de compilation 38 - Integer expression expected
- Erreur de compilation 39 - Ordinal expression expected
- Erreur de compilation 40 - Boolean expression expected
- Erreur de compilation 41 - Operand types do not match operator
- Erreur de compilation 42 - Error in expression
- Erreur de compilation 43 - Illegal assignment
- Erreur de compilation 44 - Field identifier expected
- Erreur de compilation 45 - Object file too large
- Erreur de compilation 46 - Undefined external
- Erreur de compilation 47 - Invalid object file record
- Erreur de compilation 48 - Code segment too large
- Erreur de compilation 49 - Data segment too large
- Erreur de compilation 50 - DO expected
- Erreur de compilation 51 - Invalid PUBLIC definition
- Erreur de compilation 52 - Invalid EXTRN definition
- Erreur de compilation 53 - Too many EXTRN definitions
- Erreur de compilation 54 - OF expected
- Erreur de compilation 55 - INTERFACE expected
- Erreur de compilation 56 - Invalid relocatable reference
- Erreur de compilation 57 - THEN expected
- Erreur de compilation 58 - TO or DOWNTO expected
- Erreur de compilation 59 - Undefined forward
- Erreur de compilation 61 - Invalid typecast
- Erreur de compilation 62 - Division by zero
- Erreur de compilation 63 - Invalid file type
- Erreur de compilation 64 - Cannot Read or Write variables of this type
- Erreur de compilation 65 - Pointer variable expected
- Erreur de compilation 66 - String variable expected
- Erreur de compilation 67 - String expression expected
- Erreur de compilation 68 - Circular unit reference
- Erreur de compilation 69 - Unit name mismatch
- Erreur de compilation 70 - Unit version mismatch
- Erreur de compilation 71 - Internal stack overflow
- Erreur de compilation 72 - Unit file format error
- Erreur de compilation 73 - IMPLEMENTATION expected
- Erreur de compilation 74 - Constant and case types do not match
- Erreur de compilation 75 - Record or object variable expected
- Erreur de compilation 76 - Constant out of range
- Erreur de compilation 77 - File variable expected
- Erreur de compilation 78 - Pointer expression expected
- Erreur de compilation 79 - Integer or real expression expected
- Erreur de compilation 80 - Label not within current block
- Erreur de compilation 81 - Label already defined
- Erreur de compilation 82 - Undefined label in preceding statement part
- Erreur de compilation 83 - Invalid @ argument
- Erreur de compilation 84 - UNIT expected
- Erreur de compilation 85 - ";" expected
- Erreur de compilation 86 - ":" expected
- Erreur de compilation 87 - "," expected
- Erreur de compilation 88 - "(" expected
- Erreur de compilation 89 - ")" expected
- Erreur de compilation 90 - "=" expected
- Erreur de compilation 91 - ":=" expected
- Erreur de compilation 92 - "[" or "(." expected
- Erreur de compilation 93 - "]" or ".)" expected
- Erreur de compilation 94 - "." expected
- Erreur de compilation 95 - ".." expected
- Erreur de compilation 96 - Too many variables
- Erreur de compilation 97 - Invalid FOR control variable
- Erreur de compilation 98 - Integer variable expected
- Erreur de compilation 99 - File and procedure types are not allowed here
- Erreur de compilation 100 - String length mismatch
- Erreur de compilation 101 - Invalid ordering of fields
- Erreur de compilation 102 - String constant expected
- Erreur de compilation 103 - Integer or real variable expected
- Erreur de compilation 104 - Ordinal variable expected
- Erreur de compilation 105 - INLINE error
- Erreur de compilation 106 - Character expression expected
- Erreur de compilation 107 - Too many relocation items
- Erreur de compilation 108 - Overflow in arithmetic operation
- Erreur de compilation 109 - No enclosing FOR, WHILE, or REPEAT statement
- Erreur de compilation 110 - Debug information table overflow
- Erreur de compilation 112 - CASE constant out of range
- Erreur de compilation 113 - Error in statement
- Erreur de compilation 114 - Cannot call an interrupt procedure
- Erreur de compilation 116 - Must be in 8087 mode to compile this
- Erreur de compilation 117 - Target address not found
- Erreur de compilation 118 - Include files are not allowed here
- Erreur de compilation 119 - No inherited methods are accessible here
- Erreur de compilation 121 - Invalid qualifier
- Erreur de compilation 122 - Invalid variable reference
- Erreur de compilation 123 - Too many symbols
- Erreur de compilation 124 - Statement part too large
- Erreur de compilation 126 - Files must be var parameters
- Erreur de compilation 127 - Too many conditional symbols
- Erreur de compilation 128 - Misplaced conditional directive
- Erreur de compilation 129 - ENDIF directive missing
- Erreur de compilation 130 - Error in initial conditional defines
- Erreur de compilation 131 - Header does not match previous definition
- Erreur de compilation 133 - Cannot evaluate this expression
- Erreur de compilation 134 - Expression incorrectly terminated
- Erreur de compilation 135 - Invalid format specifier
- Erreur de compilation 136 - Invalid indirect reference
- Erreur de compilation 137 - Structured variables are not allowed here
- Erreur de compilation 138 - Cannot evaluate without System unit
- Erreur de compilation 139 - Cannot access this symbol
- Erreur de compilation 140 - Invalid floating-point operation
- Erreur de compilation 141 - Cannot compile overlays to memory
- Erreur de compilation 142 - Pointer or procedural variable expected
- Erreur de compilation 143 - Invalid procedure or function reference
- Erreur de compilation 144 - Cannot overlay this unit
- Erreur de compilation 145 - Too many nested scopes
- Erreur de compilation 146 - File access denied
- Erreur de compilation 147 - Object type expected
- Erreur de compilation 148 - Local object types are not allowed
- Erreur de compilation 149 - VIRTUAL expected
- Erreur de compilation 150 - Method identifier expected
- Erreur de compilation 151 - Virtual constructors are not allowed
- Erreur de compilation 152 - Constructor identifier expected
- Erreur de compilation 153 - Destructor identifier expected
- Erreur de compilation 154 - Fail only allowed within constructors
- Erreur de compilation 155 - Invalid combination of opcode and operands
- Erreur de compilation 156 - Memory reference expected
- Erreur de compilation 157 - Cannot add or subtract relocatable symbols
- Erreur de compilation 158 - Invalid register combination
- Erreur de compilation 159 - 286/287 instructions are not enabled
- Erreur de compilation 160 - Invalid symbol reference
- Erreur de compilation 161 - Code generation error
- Erreur de compilation 162 - ASM expected
- Erreur de compilation 163 - Duplicate dynamic method index
- Erreur de compilation 164 - Duplicate resource identifier
- Erreur de compilation 165 - Duplicate or invalid export index
- Erreur de compilation 166 - Procedure or function identifier expected
- Erreur de compilation 167 - Cannot export this symbol
- Erreur de compilation 168 - Duplicate export name
- Erreur de compilation 169 - Executable file header too large
- Erreur de compilation 170 - Too many segments
-
4.1.7. Erreurs d'exécution
(47)
-
4.1.7.1. Erreurs DOS
(10)
- Runtime error 1 - Invalid function number
- Runtime error 2 - File not found
- Runtime error 3 - Path not found
- Runtime error 4 - Too many open files
- Runtime error 5 - File access denied
- Runtime error 6 - Invalid file handle
- Runtime error 12 - Invalid file access code
- Runtime error 15 - Invalid drive number
- Runtime error 16 - Cannot remove current directory
- Runtime error 17 - Cannot rename across drives
- 4.1.7.2. Erreurs d'entrées-sorties (7)
-
4.1.7.3. Erreurs critiques
(13)
- Runtime error 150 - Disk is write-protected
- Runtime error 151 - Unknown unit
- Runtime error 152 - Drive not ready
- Runtime error 153 - Unknown command
- Runtime error 154 - CRC error in data
- Runtime error 155 - Bad drive request struct length
- Runtime error 156 - Disk seek error
- Runtime error 157 - Unknown media type
- Runtime error 158 - Sector not found
- Runtime error 159 - Printer out of paper
- Runtime error 160 - Device write fault
- Runtime error 161 - Device read fault
- Runtime error 162 - Hardware failure
-
4.1.7.4. Erreurs fatales
(17)
- Runtime error 200 - Division by zero
- Runtime error 201 - Range check error
- Runtime error 202 - Stack overflow error
- Runtime error 203 - Heap overflow error
- Runtime error 204 - Invalid pointer operation
- Runtime error 205 - Floating point overflow
- Runtime error 206 - Floating point underflow
- Runtime error 207 - Invalid floating point operation
- Runtime error 208 - Overlay manager not installed
- Runtime error 209 - Overlay file read error
- Runtime error 210 - Object not initialized
- Runtime error 211 - Call to abstract method
- Runtime error 212 - Stream registration error
- Runtime error 213 - Collection index out of range
- Runtime error 214 - Collection overflow error
- Runtime error 215 - Arithmetic overflow error
- Runtime error 216 - General protection fault
-
4.1.7.1. Erreurs DOS
(10)
- 4.1.8. Turbo Pascal Bugs (2)
-
4.1.1. Turbo Pascal Généralités
(12)
-
4.2. Free Pascal
(57)
- 4.2.1. Free Pascal Généralités (1)
- 4.2.2. Les entrailles de Free Pascal (1)
- 4.2.3. Plateforme Windows (3)
-
4.2.4. Free Pascal et la Programmation Orientée Objet
(52)
-
4.2.4.1. Notions fondamentales
(19)
- Comment avoir accès à la Programmation Orientée Objet avec Free Pascal ?
- Qu'est-ce qu'une classe en Pascal ?
- Comment déclarer une classe en Pascal ?
- Pourquoi est-il préférable de déclarer une classe en faisant précéder son nom d'un T ?
- Où peut-on déclarer une classe ?
- Qu'est-ce qu'un objet en Pascal ?
- Qu'appelle-t-on l'instance d'une classe en Pascal ?
- Comment instancier une classe en Pascal ?
- Qu'est-ce que le paramètre implicite Self ?
- Qu'est-ce qu'un champ ou un attribut d'une classe en Pascal ?
- Qu'appelle-t-on l'encapsulation des données dans une classe ?
- Qu'appelle-t-on la portée d'un élément d'une classe ?
- Quelle portée appliquer à un élément d'une classe ?
- Faut-il initialiser les champs et les propriétés lors de l'instanciation d'une classe ?
- Qu'est-ce que l'héritage ?
- Qu'est-ce que le polymorphisme ?
- À quoi sert l'opérateur Is ?
- À quoi sert l'opérateur As ?
- Comment retrouver les ancêtres d'une classe ?
-
4.2.4.2. Création et libération
(12)
- Qu'est-ce qu'un constructeur ?
- Comment disposer de plusieurs constructeurs ?
- Quand faut-il hériter dans un constructeur ?
- Comment gérer une erreur lors de l'instanciation d'une classe ?
- Qu'est-ce qu'un destructeur ?
- Pourquoi et comment libérer un objet après son utilisation en Pascal ?
- Quand faut-il hériter dans un destructeur ?
- Pourquoi ne faut-il pas utiliser Destroy pour détruire une instance de classe ?
- A quoi sert Nil pour un objet ?
- Peut-on libérer un objet par une simple affectation à Nil ?
- Comment s'assurer qu'une instance de classe sera toujours libérée ?
- Quand faut-il faire appel à la procédure FreeAndNil ?
-
4.2.4.3. Les méthodes
(12)
- Qu'est-ce qu'une méthode en Pascal ?
- D'où proviennent des méthodes comme Free et Create alors qu'elles ne sont pas déclarées par le programmeur ?
- Qu'appelle-t-on une méthode statique ?
- Qu'appelle-t-on une méthode virtuelle ?
- A quoi sert le mot réservé inherited ?
- A quoi sert la directive override ?
- Qu'est-ce qu'une méthode marquée dynamic ?
- A quoi sert la directive reintroduce ?
- Qu'est-ce qu'une méthode abstraite ?
- Quand utiliser une classe qui comprend des méthodes abstraites ?
- Qu'est-ce qu'une méthode de classe ?
- Qu'est-ce qu'une méthode statique de classe ?
-
4.2.4.4. Les propriétés
(9)
- Qu'est-ce qu'une propriété en Pascal ?
- Quelle est la visibilité par défaut d'un champ dans une classe ?
- Qu'est-ce qu'un setter et un getter ?
- Quelles différences y a-t-il entre une propriété et une variable ?
- A quoi sert le spécificateur stored ?
- A quoi sert le spécificateur default ?
- A quoi set le spécificateur nodefault ?
- Pourquoi certaines propriétés apparaissent-elles avec une simple déclaration sans type ?
- Qu'est-ce qu'une propriété indexée ?
-
4.2.4.1. Notions fondamentales
(19)
-
4.3. Virtual Pascal
(11)
-
4.3.1. Virtual Pascal Généralités
(8)
- Où télécharger l'EDI ?
- Quelles plateformes sont supportées ?
- Virtual Pascal est-il compatible avec Turbo Pascal ?
- Pourquoi est-il impossible de recompiler des sources Turbo Pascal utilisant l'unité Graph ?
- Virtual Pascal est-il compatible avec Delphi ?
- Quels sont les intervalles de valeurs des types entiers de Virtual Pascal ?
- Comment taper les accolades sur un clavier français ?
- Comment permettre l'utilisation de la souris dans l'IDE sous Windows 10 ?
- 4.3.2. Les entrailles de Virtual Pascal (2)
- 4.3.3. Virtual Pascal Plateforme Windows (1)
-
4.3.1. Virtual Pascal Généralités
(8)
Proposer une nouvelle réponse sur la FAQ
Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour çaLes sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2024 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.