rappel sur une union ? - C - Programmation
Marsh Posté le 26-06-2003 à 10:08:35
Une union te permet de stocker plusieurs types de donnée dans une même variable.
Par exemple:
Code :
|
Te permet de stocher un char ou un int dans x.
Marsh Posté le 26-06-2003 à 10:10:25
une union est une zone mémoire qui ne peut contenir qu'une seule variable à la fois.
exemple :
Code :
|
tu ne pourras utiliser qu'un seul champ à la fois de cette union. ainsi, tu ne pourras jamais écrire :
Code :
|
la taille d'une union correspond à la taille de son plus grand champ
Marsh Posté le 26-06-2003 à 10:12:32
Pour du service rapide c est du service rapide
Merci ca repond pile poil a ma question
Marsh Posté le 26-06-2003 à 11:56:31
Harkonnen a écrit :
|
tu peux préciser STP ?
Marsh Posté le 26-06-2003 à 11:59:48
theShOcKwAvE a écrit : |
ben dans mon exemple, quand tu affecteras la valeur 4.0 à toto.flottant, la variable toto.entier n'existera plus et sera écrasée par toto.flottant
Marsh Posté le 26-06-2003 à 12:04:09
Harkonnen a écrit : |
ouais, ce sera écrasé, mais tu as le droit de le faire quoi ... C'est juste qu'il faut bien faire attention à la manière dont on s'en sert ...
EDIT : et encore ... Ton int, il aura une valeur à la con, mais il sera utilisable ...
Marsh Posté le 26-06-2003 à 12:07:39
theShOcKwAvE a écrit : |
oui, j'ai le droit de le faire, mais c'est le principe de l'union : utiliser une seule variable à la fois
en analogie objet, on pourrait comparer ça à la surcharge : tu surcharges une variable
Marsh Posté le 26-06-2003 à 12:41:03
Harkonnen a écrit : |
C plus comparable au polymorphisme
Marsh Posté le 26-06-2003 à 12:54:00
Code :
|
une petite union où on peut avoir besoin de se servir des 2, car les données se recouvrent sans se gêner ... Ca permet 2 utilisations qui proposent chacune leur facilité, suivant les cas ...
Edit : évidemment, ca perd son intérêt si on ne peut pas utiliser d'union et de structures anonymes ....
Marsh Posté le 26-06-2003 à 13:51:59
LetoII a écrit : |
très juste, étant donné qu'une seule instance existe en mémoire à l'instant T
Marsh Posté le 26-06-2003 à 10:03:27
Bonjour !
Je suis en train de lire du code C et j ai un oubli sur ce que c 'est exactement une union !
Quelqu un pourrait il la definir precisement ?
MErci