Chapitre 6 les fichiers Chapitre LES FICHIERS Fichier Un ?chier angl ?le est un ensemble structuré de données stocké en général sur un support externe usb disque dur disque optique bande magnétique Nous vous proposons ici d'étudier les fonctions permettan
Chapitre LES FICHIERS Fichier Un ?chier angl ?le est un ensemble structuré de données stocké en général sur un support externe usb disque dur disque optique bande magnétique Nous vous proposons ici d'étudier les fonctions permettant au programme d'échanger des informations avec des ?chiers'' En C comme d'ailleurs dans d'autres langages tous les périphériques qu'ils soient d'archivage disque usb ou de communication clavier écran imprimante peuvent être considérés comme des ?chiers Rappelons que l'on distingue traditionnellement deux techniques de gestion de ?chiers l'accès séquentiel consiste à traiter les informations séquentiellement c'est-à-dire dans l'ordre o? elles apparaissent ou appara? tront dans le ?chier les enregistrements sont mémorisés consécutivement dans l'ordre de leur entrée et peuvent seulement être lus dans cet ordre l'accès direct consiste à se placer immédiatement sur l'information souhaitée sans avoir à parcourir celles qui la précèdent Fichier séquentiel Les ?chiers séquentiels que nous allons considérer dans ce cours auront la propriété suivante Les ?chiers se trouvent ou bien en état d'écriture ou bien en état de lecture nous ne pouvons pas simultanément lire et écrire dans le même ?chier Fichiers standards Il existe deux ?chiers spéciaux qui sont dé ?nis par défaut pour tous les programmes stdin le ?chier d'entrée standard stdout le ?chier de sortie standard En général stdin est lié au clavier et stdout est lié à l'écran c -à-d les programmes lisent leurs données au clavier et écrivent les résultats sur l'écran CCRÉATION SÉQUENTIELLE D'UN FICHIER Voici un programme qui se contente d'enregistrer séquentiellement dans un ?chier une suite de nombres entiers qu'on lui fournit au clavier include int main void char nom ?ch int n FILE sortie printf nom du ?chier à créer scanf s nom ?ch sortie fopen nom ?ch w do printf donnez un entier scanf d n if n fwrite n sizeof int sortie while n fclose sortie return La déclaration FILE sortie signi ?e que sortie est un pointeur sur un objet de type FILE La fonction fopen est ce que l'on nomme une fonction d'ouverture de ?chier Elle possède deux arguments le nom du ?chier concerné fourni sous forme d'une cha? ne de caractères ici nous avons prévu que ce nom ne dépassera pas caractères le chi ?re tenant compte du caractère notez qu'en général ce nom pourra comporter une information chemin répertoire permettant de préciser l'endroit o? se trouve le ?chier une indication fournie elle aussi sous forme d'une cha? ne précisant ce que l'on souhaite faire avec ce ?chier Ici on trouve w abréviation de write qui permet de réaliser une ouverture en écriture Plus précisément si le ?chier cité n'existe pas il sera créé par fopen ? ? ? ? ? ? ? Cfwrite n sizeof int sortie La fonction fwrite possède quatre arguments précisant l'adresse d'un bloc d'informations ici n - la taille d'un bloc en octets ici sizeof int notez l'emploi de l'opérateur sizeof qui assure la portabilité du programme - le nombre de blocs de cette taille que l'on souhaite transférer dans le
Documents similaires
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/rKhIWE4hZM0yWf2WjkcKvYC0V0b5J7zqlORBRwQkdmAFiB85ncFyr6vht5zfc6p9Psb4TbubMFghQFyf3WAAZwqF.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/bMyJZ00jRNoVkkhrfcUmbUbheSbQrCVYfvU5ubZF3tWpEetQLupjs1bCbzaAEHBZGABbBYG8YtHT01PB61C7YClU.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/fdPI50x7jLZ6SoLunKXYBaw1qtHEzZxCC7nnv0rIx7cTsJKuLYkaeYmxxJTF7r3ucmcPKPMcVv79fKEj7RdYK614.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11703064619v3jqb8nvvy1h7zgbsczfoj43vz1yuwb1j7xueif12rpwavajccycfexgjtrobcdre4jl6wdz4aje2nnlljr1jrwhkq56nqjw9kqb.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/Vnkq2idGKKqLs2U1NzVO2Y2upVgdo9KAj5pgXvTQK0dkYxykisGLHIzq0rkwHLSJxBQDfAoPOOSNr8tskYJpmt0f.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/OvVPIuRrIjMsOV1HiY5CyodcTx6QADrtfzG3C815ugKlwk44IwquPgiV4h46hOnnkpFdEwZfuCNMZPxr21VXPmPI.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11703191396fep0kj2vtlcm7sx2tatpqb2n0vyprpgfdweslpa7qk360ppiotntyxwo3w7a3ydyo5fbm2tbi5sl2le3r2y9m8qo2ibd8rk1eiax.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/3MMimSGRPkh12PajvRXCoIU2VGpUcv6tOaTaduz9peOSC9aMHE5ueRp6pCc80SOrDVCkHl3XNcKv7TG6QgNdSum5.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/11703078567gw4fh9m4esz11qaq4veop1yiamo6vypptvmttkdffqlnoohp2ydd7rutoe9bhu46d1brpskspotz5hpyfy5762ecusuvw3jdh5zu.png)
![](https://b3c3.c12.e2-4.dev/disserty/uploads/preview/g3LbgZZriQbiQkloKqNbqf7ZA0kKkISuyZ8HeibPkr6EVNZ3DDTJqploWQ6M7o40g8fWBKB3kqC42o35Glup0Vnm.png)
-
24
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise- Détails
- Publié le Nov 03, 2021
- Catégorie Literature / Litté...
- Langue French
- Taille du fichier 77.9kB