Pointer des structures
Résolu/Fermé
seljazou
Messages postés
175
Date d'inscription
dimanche 6 septembre 2009
Statut
Membre
Dernière intervention
25 décembre 2009
-
23 nov. 2009 à 14:39
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 - 23 nov. 2009 à 21:54
Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 - 23 nov. 2009 à 21:54
A voir également:
- Pointer des structures
- Mettre des points sur une carte - Guide
- Comment insérer des points de suite sur word - Guide
- Dessin avec des points ✓ - Forum Programmation
- Quand j'envoie des smileys ça fait des points d'interrogation - Forum Samsung
- Des points d’interrogations dans les messages iPhone - Forum iPhone
2 réponses
loupius
Messages postés
697
Date d'inscription
dimanche 1 novembre 2009
Statut
Membre
Dernière intervention
31 décembre 2017
148
23 nov. 2009 à 15:46
23 nov. 2009 à 15:46
c'est quoi alors la valeur de pointeur? c'est l'adresse de *famille1, mais .... ça n'a pas de valeur!!!!Ben si, comme le dit Paco, cette valeur est l'adresse où doit se trouver une structure de type famille.
Sauf qu'ici, après la simple déclaration struct famille *famille1;, aucune mémoire n'est réservée et la valeur du pointeur est n'importe quoi; il est donc nécessaire de réserver de la mémoire afin que le pointeur ait une valeur correcte, c'est-à-dire qu'il 'pointe' sur une adresse mémoire valide.
Note qu'on se fiche complètement de la valeur du pointeur en tant que telle, l'important est d'être certain que l'adresse représentée par cette valeur, est valide.
Bonne réflexion et n'oublie pas de refroidir les neurones.
Sauf qu'ici, après la simple déclaration struct famille *famille1;, aucune mémoire n'est réservée et la valeur du pointeur est n'importe quoi; il est donc nécessaire de réserver de la mémoire afin que le pointeur ait une valeur correcte, c'est-à-dire qu'il 'pointe' sur une adresse mémoire valide.
Note qu'on se fiche complètement de la valeur du pointeur en tant que telle, l'important est d'être certain que l'adresse représentée par cette valeur, est valide.
Bonne réflexion et n'oublie pas de refroidir les neurones.
Pacorabanix
Messages postés
3248
Date d'inscription
jeudi 23 août 2007
Statut
Membre
Dernière intervention
19 mai 2013
662
23 nov. 2009 à 14:52
23 nov. 2009 à 14:52
la valeur de ce pointeur c'est l'adresse mémoire où se trouve une structure famille.
23 nov. 2009 à 19:27
struct famille *famille1;
famille1 est un pointeur sur une variable (*famille1) qui est de type famille.
quelle est alors la valeur de *famille1 ? Je ne crois pas que ça existe, puisque *famille contient plusieurs champs.
J'espère que ma question est plus claire :)
23 nov. 2009 à 19:51
Ce que tu peux faire, si famille1 pointe effectivement déjà sur une struct crée correctement , c'est utiliser " *famille1 " comme une véritable variable de type struct famille. Sa "valeur" comme tu dis est en fait tout le contenu mémoire de la struct famille vers laquelle il pointe. Voir https://c.developpez.com/faq/?page=Les-pointeurs#POINTEURS_struct
Si tu veux utiliser un des champ, tu peux faire (*famille1).NomDuChamp ou plutôt famille1->NomDuChamp si tu veux la valeur d'un champ
tu vois donc que " *pointVersUneFam " a une "valeur" utilisable, c'est celle d'une variable struct ;) , ce que , si j'ai bien compris, tu disais ne pas être une véritable valeur. Je crois que c'est juste une question de mots. C'est clair là ?
23 nov. 2009 à 20:21
la valeur de ce *famille1 est donc tout le contenu mémoire de la variable *famille1?
J'espère que c ça, c plus logique :)
merci
23 nov. 2009 à 21:04
23 nov. 2009 à 21:18
c résolu. Merci.
PS: auj on a commencé le cours sur le JAVA :s
Courage... Courage... :D
merci beaucoup :)