Le code suivant compile bien avec gcc (c'est apparemment du C99):
Mais pour vc++ (Visual Studio 2008), il y a une erreur dans la définition de f1, à cause du '.' devant minmax .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 #include <stdlib.h> union foo { struct { int l; void *d; } pool; struct { int min; int max; } minmax; }; int main () { union foo f1 = { .minmax = { 1, 2 } }; return 0; }
J'aimerais savoir s'il y a une autre syntaxe similaire pour vc++ (i.e. je veux définir f1 lors de sa déclaration). Donc
n'est pas ce que je demande.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 union foo f1; f1.minmax.min = 1; f1.minmax.max = 2;
merci
Partager