This shows you the differences between two versions of the page.
programare-cc:breviar-9 [2021/12/09 02:13] viorel.mocanu [Enumerări] |
programare-cc:breviar-9 [2021/12/09 02:49] (current) viorel.mocanu [Uniuni] |
||
---|---|---|---|
Line 90: | Line 90: | ||
<code c> | <code c> | ||
#include <stdio.h> | #include <stdio.h> | ||
- | + | | |
- | int main() | + | union Data |
- | { | + | { |
- | union data | + | char a; |
- | { | + | int x; |
- | char a; | + | float f; |
- | int x; | + | }; |
- | float f; | + | |
- | } myData; | + | void print_union(union Data data) { |
- | + | printf("------UNION------\n"); | |
- | myData.a = 'A'; | + | printf("data.a=%c\n", data.a); |
- | printf("Here is the Data:\n%c\n%i\n%.3f\n", myData.a, myData.x, myData.f ); | + | printf("data.x=%d\n", data.x); |
- | + | printf("data.f=%f\n", data.f); | |
- | myData.x = 42; | + | } |
- | printf("Here is the Data:\n%c\n%i\n%.3f\n", myData.a, myData.x, myData.f ); | + | |
- | + | int main() { | |
- | myData.f = 101.357; | + | |
- | printf("Here is the Data:\n%c\n%i\n%.3f\n", myData.a, myData.x, myData.f ); | + | union Data data; |
- | + | ||
+ | data.a = 'A'; | ||
+ | print_union(data); | ||
+ | |||
+ | data.x = 42; | ||
+ | print_union(data); | ||
+ | |||
+ | data.f = 101.357; | ||
+ | print_union(data); | ||
return 0; | return 0; | ||
} | } |