다음 코드는 '2'를 네 번 인쇄합니다. 왜 '1'을 인쇄하지 않습니까? 누군가 여기서 정확히 무슨 일이 일어 났는지 설명 할 수 있습니까?공용 구조체 멤버에 대한 참조를 역 참조
#include <iostream>
int main() {
union IntegersUnion {
int a;
int b;
};
IntegersUnion q;
q.a = 1;
q.b = 2;
std::cout << "(*(&q.a)) = " << (*(&q.a)) << std::endl;
std::cout << "(*(&q.b)) = " << (*(&q.b)) << std::endl;
std::cout << "(*(&(q.a))) = " << (*(&(q.a))) << std::endl;
std::cout << "(*(&(q.b))) = " << (*(&(q.b))) << std::endl;
return 0;
}
당신은 이해합니까? '합집합'은 무엇입니까? – Nim
분명히 나는 그렇지 않습니다. 방금 일부 설명서를 읽었지만 요점을 놓친 것 같습니다. –
적절한 질문은 @ 곡선이 생각한 것입니다. 그게 내가 알고 싶어하는거야. –