Typedef structure
RésoluBonjour,
Dans quels cas faut-il utiliser "typedef" lorsqu'on définit une nouvelle structure dans un code ?
Merci beaucoup :))))
Macintosh / Safari 15.6.1
2 réponses
-
bonjour,
à chaque fois que tu veux utiliser une définition de type perso:
typedef int ENTIER // pour écrire ENTIER dans le code au lieu de int
(si tu veux absolument écrire en français, par exemple)
typedef struct _toto { ...... } TOTO; //pour écrire TOTO machin; //au lieu de struct _toto machin; -
Bonjour,
Je recommande de nommer les structures avec le suffixe _t, tout en minuscule. Ces deux blocs de code sont parfaitement équivalents :
struct _ma_structure_t { int attribut1; int attribut2; } typedef struct _ma_structure_t ma_structure_t;typedef struct _ma_structure_t { int attribut1; int attribut2; } ma_structure_t;- En C et en C++, tu n'es pas obligé(e) d'utiliser un typedef quand tu déclares une structure. Typedef ou pas, tu peux très bien utiliser struct _ma_structure_t dans tout ton code, ce sera parfaitement correct.
- En C++, tu n'as même pas besoin de faire de typedef, tu pourrais parler indifféremment de struct _ma_structure_t ou directement de _ma_structure (idem pour les classes).
- En C et en C++, le nom avec ou sans le mot clé struct peut être le même. Tu peux donc parfaitement écrire ne pas utilisé de préfixe _ devant le type intermédiaire :
typedef struct ma_structure_t { int attribut1; int attribut2; } ma_structure_t;Bonne chance