공용 구조체에 대한 부적절한 액세스Improper Access to a Union

ANSI 3.3.2.3 다른 형식의 멤버를 사용하여 공용 구조체 개체의 멤버에 액세스합니다.ANSI 3.3.2.3 A member of a union object is accessed using a member of a different type

두 형식의 공용 구조체가 선언되고 값이 한 개 저장되지만 다른 형식으로 공용 구조체에 액세스하는 경우 결과를 신뢰할 수 없습니다.If a union of two types is declared and one value is stored, but the union is accessed with the other type, the results are unreliable.

예를 들어, floatint의 공용 구조체가 선언됩니다.For example, a union of float and int is declared. float 값이 저장되지만 나중에 int로 값에 액세스합니다.A float value is stored, but the program later accesses the value as an int. 그러면 float 값의 내부 저장소에 따라 값이 결정됩니다.In such a situation, the value would depend on the internal storage of float values. 정수 값은 신뢰할 수 없습니다.The integer value would not be reliable.

참고 항목See Also

구조체, 공용 구조체, 열거형 및 비트 필드Structures, Unions, Enumerations, and Bit Fields