Initialisation d'une structure
Résolu/Fermé
SalimRT
Messages postés
14
Date d'inscription
lundi 31 décembre 2018
Statut
Membre
Dernière intervention
24 février 2019
-
Modifié le 4 janv. 2019 à 16:59
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 - 5 janv. 2019 à 18:03
[Dal] Messages postés 6194 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 11 octobre 2024 - 5 janv. 2019 à 18:03
A voir également:
- Initialisation d'une structure
- Logiciel calcul structure bois gratuit - Télécharger - Architecture & Déco
- Structure d'un rapport de stage - Guide
- Echec de l'initialisation du processus de connexion interactive - Forum Windows
- Acer care center est toujours en cours d'initialisation ✓ - Forum Virus
- L'initialisation du rockstar games launcher a échoué ✓ - Forum Jeux PC
1 réponse
[Dal]
Messages postés
6194
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
11 octobre 2024
1 092
Modifié le 4 janv. 2019 à 17:13
Modifié le 4 janv. 2019 à 17:13
Salut SalimRT,
Je suppose qu' "un type enregistrement Personne" se réfère sûrement à un type créé par le programme avec un typedef sur un struct comprenant les membres de différents types mentionnés.
Tu as des exemples là : https://www.tutorialspoint.com/cprogramming/c_typedef.htm
Note que ce tutoriel n'utilise pas de typedef, donc la variable est déclarée
Ensuite, l'initialisation suit les mêmes principes, car typedef ne fait que créer un alias sur la struct.
Dal
Je suppose qu' "un type enregistrement Personne" se réfère sûrement à un type créé par le programme avec un typedef sur un struct comprenant les membres de différents types mentionnés.
Tu as des exemples là : https://www.tutorialspoint.com/cprogramming/c_typedef.htm
Note que ce tutoriel n'utilise pas de typedef, donc la variable est déclarée
struct Books Book1;avant d'être utilisée. J'imagine que dans ton cas, tu auras déclaré un typedef Personne qui sera un alias sur ta struct, et que dans ton cas la déclaration serait du type
Personne une_personne;pour déclarer ta personne.
Ensuite, l'initialisation suit les mêmes principes, car typedef ne fait que créer un alias sur la struct.
Dal
5 janv. 2019 à 10:16
mais est-ce qu'il y a des moments que je dois travailler avec struct ou typedefstruct? et qui est la plus simple et utiliser ?
Modifié le 5 janv. 2019 à 18:17
quand tu écris :
tu peux déclarer une variable comme cela : . En lisant cette déclaration, je sais que je déclare un tableau de 100 , et que la "book" a des membres.
permet de créer un alias sur un type, une ou autre chose, en créant un identifiant pour un type non standard.
Par exemple, avant la révision du C99 introduisant le type standard dans le langage C (https://en.cppreference.com/w/c/types/boolean), le type booléen était simulé par certains programmeurs avec un sur un , par exemple : ...
Lorsque tu vois dans un code : , tu sais juste que tu déclares un , avec un type non standard qui a dû être définit quelque part avec un (ou même un , et là on frise l'horrible) et qui peut être, en fait, de n'importe quel type (un comme ici, une , un , un pointeur sur ,...). L'information est masquée.
C'est un choix du programmeur que de masquer, ou non, cette information. Parfois, c'est utile pour créer des types opaques, où le programmeur n'a pas besoin de savoir exactement les détails de l'implémentation (par exemple, dans la bibliothèque standard du C, le type ), parce que tous ces détails sont gérés par la bibliothèque et que le programmeur n'a pas à s'en soucier (en fait on ne veut pas qu'il y mette son nez pour ne pas interférer avec l'implémentation).
Dans le cas de struct, à mon sens, cela ne se justifie pas... mais c'est une affaire de style.
Certains n'aiment pas du tout les , par exemple ils sont très mal vus par les contributeurs au noyau Linux (Linux kernel coding style : https://www.kernel.org/doc/html/v4.11/process/coding-style.html)
D'autres les aiment bien, et ils peuvent être pratiques pour éviter d'avoir des types longs à taper.
En ce qui te concerne, si l'exercice te demande de le créer, fais le :-)
Et dans la vraie vie, si tu programmes seul, tu fais tes propres choix, si tu programmes sur un projet existant, tu adaptes ton style au style du projet (ou tu le définis en concertation avec les autres contributeurs si tu arrives suffisamment en amont).