armcc에서 union 선언 시 초기화하기
글쓴이: rain / 작성시간: 화, 2006/03/28 - 6:59오후
[Source]
1
2 typedef struct {
3 int type;
4
5 union _u {
6 int i;
7 char c;
8 } u;
9 } Param;
10
11
12 int
13 main() {
14 int integer = 4;
15 char character = 'c';
16
17 Param param = { 3, character };
18
19 return 0;
20 }
[Compile]
$ armcc Init.c
"Init.c", line 17: Serious error: C2432E: non-constant initialiser
"Init.c", line 20: Warning: C2870W: variable 'param' declared but not used
"Init.c", line 20: Warning: C2870W: variable 'integer' declared but not used
Init.c: 2 warnings, 0 errors, 1 serious error
어떻게 해야 17 line의 error를 처리하고 초기화 할 수 있을 련지..ㅡㅡa
gcc에서는 되는데.....
이유나 해결 방법 좀 조언 부탁드려욤.
Forums:


에러 문구를 보니
에러 문구를 보니 armcc 는 non-constant init. 는 안되나 보네요.
그럼 그냥
Param param;
param.type = 3;
parma.u.c = character;
이런식으로 하세요.
댓글 달기