C語言關於union

#include<stdio.h>
union Student{
	int i;
	unsigned char ch[9];
};
int main (){	
	Student student;
	student.i=0x1632;
	printf("%x\n",student.ch[0]);        //32
	printf("%x\n",student.ch[1]);        //16
	printf("%p\n%p\n",&student.i,&student.ch);
	printf("%d\n",sizeof(student));      //12
	printf("%d\n",sizeof(student.i));    //4
	printf("%d\n",sizeof(student.ch));   //9
	return 0;
}
聯合體union的內存取內部變量中大者。各變量共用一塊內存,對其中一個變量賦值,即是對所有的變量同時賦值。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章