Travaux Dirigés I : Révisions appels systèmes Unix
Cours

Exercice D : Manipulation de structures - " savobj.c+ lirobj.c "

Question

Définir dans un fichier defobj.h un typedef struct { ...} obj; qui décrit la structure suivante :

Manipulation de structures
Manipulation de structures

Question

Construire un fichier iniobj.h qui initialise un tableau d'objets (longueur du tableau définie par #define tablen n) de type "obj" tels que décrits ci-dessus.

  • "ident_o1", "description_o1", 11, 12, 10.2345

  • "ident_o2", "description_o2", 21, 22, 20.2345

  • "ident_o3", "description_o3", 31, 32, 30.2345

Question

Écrire un programme savobj.c qui va inclure les 2 fichiers .h définis ci-dessus et qui va:

  • ouvrir en écriture un fichier savobj.dat

  • pour chaque objet du tableau :

    . appeler une fonction savobj(obj, file)

  • fermer savobj.dat

La fonction savobj(obj, file) écrit le contenu binaire de l'objet dans le fichier.

Question

Écrire un programme lirobj.c qui va inclure les 2 fichiers .h définis ci-dessus et qui va:

  • ouvrir en lecture le fichier savobj.dat

  • pour chaque objet du tableau :

    . appeler une fonction lirobj(obj, file)

    . appeler une fonction priobj(obj)

  • fermer savobj.dat

La fonction lirobj(obj, file) va lire en binaire dans le fichier de quoi remplir un objet "obj". La fonction priobj(obj) imprime sur stdout le contenu de l'objet.

Exercice C : Process communiquant par un pipe - "forkpipe.c" (page Précédente)
AccueilImprimerRéalisé avec SCENARI