Sujet : [c++] petite question sur les pointeurs (pas un problème) |
LetoII |
Verdoux a écrit a écrit :
De toute façon le premier ne marchera pas.
untype *caca; n'initialise pas le pointeur. L'adresse sur lequel il pointe est indéterminée.
Ensuite CreateCaca(caca) appelle la fonction CreateCaca avec une copie du pointeur caca: c'est à dire que ent est un pointeur qui pointe sur l'adresse de caca (indéterminée). Mais CreateCaca ne peut initialiser le pointeur caca.
Pour le faire il faut écrire:
Code :
- void CreateCaca(untype **ent);
- void main()
- {
- untype *caca;
- CreateCaca(&caca);
- }
|
Où CreateCaca fait un truc du genre:
*ent = (untype*)malloc(sizeof(untype));
|
c vrai, mais bon sous réserves que le pointeur pointe effectivement sur qqc ça marche |