자료구조 정의 부탁 좀 드리겠습니다.

leboum의 이미지

[ etc ] [ etc1 ] [etc2] [ data ]
1byte 2byte 1byte n byte(max:28byte)


의 기본 구조가 있습니다.

etc~et2 는 고정인데

자료전달
[data1] [data2] [data3] [data4]
2byte 1byte 4byte 2byte

신호전달
[data1] [data2] [data3] [data4] [data5]
1byte 2byte 2byte 1byte 2byte

....
...

data 쪽에 자료구조가 저런씩으로 가변형태이고 10개정도 있습니다.


어떻게 자료구조를 정의하면 하나의 자료구조로 다 이용할수 있을까요?

strcut {
char etc;
short etc1;
char etc;
char * data;
}

이 자료구조가 맞는걸까요??

아님 data에 맞게 자료구조를 나누는것이 편한것일까요??

고민되네요.

조언부탁드리겠습니다.

익명 사용자의 이미지

int datasize; 정도는 추가되어야 겠네요.

라스코니의 이미지

현재는 메모리 과잉의 시대... 임베디드 프로그래밍이라도 예외는 아닙니다.

메모리가 아주 부족하지 않다면,,, 더군다나 10개 정도라면

__attribute__ ((padding))
strcut {
char etc;
short etc1;
char etc;
int datasize;
char data[28];
}

또는

strcut {
int etc;
int etc1;
int etc;
int datasize;
char data[28];
}
가 베스트 되겠네요.