Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1734 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Typedef ->problème de compréhension

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Typedef ->problème de compréhension

n°517195
neo9205
Posté le 18-09-2003 à 15:03:04  profilanswer
 

:hello:  
Sur cette déclaration de structure suivante :

Code :
  1. typedef struct element
  2. {
  3.     struct element *suiv;
  4. }syn_element,*pt_element;


 
Je comprend très bien que syn_element soit identique à struct element et constitue un nouveau type pour des raisons de simplicité...
Au lieu de mettre "struct element l1" on met "syn_element l1" ce qui est plus rapide et plus compréhensible selon le nom donné...
 
Par contre pour

Code :
  1. *pt_element

je comprend pas du tout : c'est un pointeur sur struct element ??? Alors pkoi pas faire

Code :
  1. struct element *pt_element

ou bien meme

Code :
  1. syn_element *pt_element

???

mood
Publicité
Posté le 18-09-2003 à 15:03:04  profilanswer
 

n°517197
chrisbk
-
Posté le 18-09-2003 à 15:05:26  profilanswer
 

bah y'a rien a comprendre.... ca te permet de virer le "*" lors des declarations de variables / parametres
 

n°517201
Taz
bisounours-codeur
Posté le 18-09-2003 à 15:06:14  profilanswer
 

et si t'abandonnais les synthaxes à la con qu'on peut faire en C pour un truc clair ?
 

Code :
  1. struct _element
  2. {
  3.   struct _element *next;
  4. };
  5. typedef struct _element Element;
  6. Element e, *p;


Message édité par Taz le 18-09-2003 à 15:24:25
n°517204
neo9205
Posté le 18-09-2003 à 15:09:36  profilanswer
 

Taz a écrit :

et si t'abandonné les synthaxe à la con qu'on peut faire en C pour un truc claire ?
 

Code :
  1. struct _element
  2. {
  3.   struct _element *next;
  4. };
  5. typedef struct _element Element;
  6. Element e, *p;




Je suis obligé d'y passer au C :pfff:  
 
Tu parles d'un langage objet ,style C++ ou java ??
Y a t-il besoin d'apres toi de tout savoir sur le C pour pouvoir aborder sans aucun probleme le java ou C++ ?

n°517206
skeye
Posté le 18-09-2003 à 15:11:50  profilanswer
 

neo9205 a écrit :


Je suis obligé d'y passer au C :pfff:  
 
Tu parles d'un langage objet ,style C++ ou java ??
Y a t-il besoin d'apres toi de tout savoir sur le C pour pouvoir aborder sans aucun probleme le java ou C++ ?


Il te parle pas d'abandonner le C, mais d'écrire des choses équivalentes et claires.

n°517209
neo9205
Posté le 18-09-2003 à 15:16:21  profilanswer
 

skeye a écrit :


Il te parle pas d'abandonner le C, mais d'écrire des choses équivalentes et claires.


 
Mon code n'est pas clair ? Qu'aurais je du mettre comme code ??

n°517216
skeye
Posté le 18-09-2003 à 15:19:42  profilanswer
 

neo9205 a écrit :


 
Mon code n'est pas clair ? Qu'aurais je du mettre comme code ??
 


 
à priori non puisque tu ne le comprends pas! [:skeye]  
Lis sa réponse jusqu'au bout, au moins!

n°517237
neo9205
Posté le 18-09-2003 à 15:41:54  profilanswer
 

skeye a écrit :


 
à priori non puisque tu ne le comprends pas! [:skeye]  
Lis sa réponse jusqu'au bout, au moins!


 
Ah ok...excusez moi ,j'avais pas lu la fin...c'est vrai que c'est plus clair, mais c'est pas de ma faute, c'est l'ecole qui fait ce type de syntaxe alors je suis bien obligé de la comprendre cette syntaxe bizzare :(


Message édité par neo9205 le 18-09-2003 à 15:44:21
n°517243
LetoII
Le dormeur doit se réveiller
Posté le 18-09-2003 à 15:48:34  profilanswer
 

Code :
  1. typedef struct element
  2.   {
  3.         struct element *suiv;
  4.   }syn_element,*pt_element;


 
Est équivalent à:
 

Code :
  1. typedef struct element
  2.   {
  3.         struct element *suiv;
  4.   }syn_element;
  5. typedef syn_element* pt_element;


 
Tu déclare deux alias un pour le type struct element
 et un pour le type struct element *


---------------
Le Tyran
n°517245
neo9205
Posté le 18-09-2003 à 15:48:52  profilanswer
 

Taz a écrit :

et si t'abandonnais les synthaxes à la con qu'on peut faire en C pour un truc clair ?
 

Code :
  1. struct _element
  2. {
  3.   struct _element *next;
  4. };
  5. typedef struct _element Element;
  6. Element e, *p;




 
Ak oki merci c'est vachement plus clair comme ça : en fait j'avais raison alors:  
*pt_element est bien un pointeur sur "struct element".

mood
Publicité
Posté le 18-09-2003 à 15:48:52  profilanswer
 

n°518092
philou_a7
\_o< coin ! >o_/
Posté le 19-09-2003 à 11:43:00  profilanswer
 

neo9205 a écrit :


 
Ak oki merci c'est vachement plus clair comme ça : en fait j'avais raison alors:  
*pt_element est bien un pointeur sur "struct element".


 
et masquer un * dans un typedef c'est pas d'une clarté féroce....

n°518094
Taz
bisounours-codeur
Posté le 19-09-2003 à 11:44:01  profilanswer
 

philou_a7 a écrit :


 
et masquer un * dans un typedef c'est pas d'une clarté féroce....

ben si, ça s'appelle faire un type opaque

n°518210
philou_a7
\_o< coin ! >o_/
Posté le 19-09-2003 à 14:23:30  profilanswer
 

Taz a écrit :

ben si, ça s'appelle faire un type opaque


 
un oeuf de paques ?  :??:  
 
 
 
 
 
 :whistle:

n°518227
noldor
Rockn'roll
Posté le 19-09-2003 à 14:36:58  profilanswer
 

Taz a écrit :

ben si, ça s'appelle faire un type opaque

et c'est bien ou pas (d'après toi) ?


---------------
http://runnerstats.net
n°518264
Taz
bisounours-codeur
Posté le 19-09-2003 à 15:24:21  profilanswer
 

noldor a écrit :

et c'est bien ou pas (d'après toi) ?

ça dépend, chachez la nature pointeuresque d'un type, ça peut poser des problèmes, mais il y a des exemples de types opaques très bien, nos amis les FILE*


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Typedef ->problème de compréhension

 

Sujets relatifs
Problème de date avec php et linux[REOUVERT] Problème avec le JPEGCodec
[résolu]Problème de compatibilité IE sur un bout de codeframes, petit probleme
Probleme avec CVS et Savannah : qqn peut m'aider ?[C/C++] probleme de dependance de librairie
Kylix 3 Open C++ : Problème de compilation, voilà le logKylix C++ Builder : problème avec time.h !
probleme de liste deroulante[Java] Problème de classpath avec un fichier Jar
Plus de sujets relatifs à : Typedef ->problème de compréhension


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR