반응형
선언문에서 조합을 초기화할 수 있습니까?
예를 들어, 우리에게 연합이 있다고 가정해 보겠습니다.
typedef union {
unsigned long U32;
float f;
}U_U32_F;
이 조합형의 변수가 선언되면 초기값을 설정할 수 있는 방법이 있습니까?
U_U32_F u = 0xffffffff; // Does not work...is there a correct syntax for this?
이니셜라이저 목록 사용:
U_U32_F u = { 0xffffffff };
첫번째 멤버가 아닌 다른 멤버를 설정할 수 있습니다.
U_U32_F u = { .f = 42.0 };
구성원별 조합 초기화는 C99 이전 컴파일러에서는 작동하지 않습니다. 이 컴파일러 중 우울한 숫자가 있습니다.예를 들어 현재의 마이크로소프트 C 컴파일러는 그것을 지원하지 않습니다. (막연하게도 K&R II로 거슬러 올라가는 첫 멤버 초기화도 지원하지 않는 것으로 기억하지만, 틀릴 수도 있습니다.)
해라U_U32_F u = {0xffffffff};
언급URL : https://stackoverflow.com/questions/2148989/can-a-union-be-initialized-in-the-declaration
반응형
'programing' 카테고리의 다른 글
| 시퀀스에 대한 Python 'enumerate'와 동일한 ES6은 무엇입니까? (0) | 2023.10.04 |
|---|---|
| PowerShell - HTML 구문 분석: 웹 사이트에서 정보 가져오기 (0) | 2023.10.04 |
| Angular(최신까지 2개 이상)를 사용하여 URL에서 ID 추출 (0) | 2023.09.24 |
| 레이아웃의 레이아웃이 기본 레이아웃 폴더에 선언이 없습니다 [오류] (0) | 2023.09.24 |
| Jquery Datatables 열 렌더링 및 정렬 (0) | 2023.09.24 |