C結構體struct 和 共用體union的使用測試


#include <stdio.h>
struct
{
	char name[10];
	char sex;
	char job;
	int  num;
	union{
		//聯合只能共用同一個內存
		int  class;
		char position[10];			
	}category;
}PE[2];

int main(){
	int i;
	for(i=0;i<2;i++){
		printf("請輸入:號碼 姓名 性別 職業\n");
		scanf("%d %s %c %c", &PE[i].num,PE[i].name,&PE[i].sex,&PE[i].job);
		if(PE[i].job=='s'){
			printf("請輸入班級:");
			scanf("%d",&PE[i].category.class);
		}else if(PE[i].job=='t'){
			printf("請輸入職業:");
			scanf("%s", PE[i].category.position);
			
		}else{
			printf("輸入錯誤");
		}
	}	
	return 0;
}

  共用體:共享同一個內存;一旦a使用了b就被棄用 b使用a就被棄用!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM