bonjour,
J'ai une structure déclarée comme cela
je voudrais pouvoir séparer en plusieurs la variable myBuf => et je veux que mon programme puisse continuer de compiler sans avoir à faire de modification dans mon programme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 typedef struct { unsigned char a; signed char b; unsigned int c; char myBuf[SIZE_BUF]; signed int d; } YOOO;
J'ai donc pensé à modifier ma structure en union:
=> normalement je dois pouvoir continuer à pouvoir utiliser ma structure comme avant a part que je peux en plus acceder aux éléments de .myBufEx qui sont stoqués au même emplacement mémoire que .myBuf[]
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
21
22
23
24
25 typedef struct _myStruct { char sm; char Buf1[20]; char Buf2[SIZE_BUF - 1 - 20]; } myStruct ; typedef union { struct{ unsigned char a; signed char b; unsigned int c; char myBuf[SIZE_BUF]; signed int d; }; struct{ unsigned char a; signed char b; unsigned int c; myStruct myBufEx; signed int d; }; } YOOO;
Pouvez-vous me confirmer que j'ai le droit de faire ça et que je n'aurais pas de problèmes (a priori ça compile) ?
Remarque, je code pour un petit microcontrolleur 8-bits
Partager