枚举变量的使用和类型声明

1、枚举类型

     什么时候会用到枚举类型呢,当一个变量只有限定值可取的时候。枚举,即将变量的值一一列举出来。C语言中,对于枚举元素是按常量处理的,定义时默认值是0 1 2 3.。。。

当然,也可以改变枚举变量的值。

enum color{red, green,blue};
enum color mycolor;
mycolor = red;

enum color{red=5, green,blue} mycolor1;

一般我们如果想利用枚举变量的值,但是又不想用0  1 2 3来表示,则我们可以其它名字来表示。

2、typedef类型定义

通过typedef声明新的类型名来代替已有的类型名字;用的较多便是结构体类型的定义

比如:

typedef int  myINT;    
typedef double muDOUBLE;
typedef struct {
     int num;
     int age;
}student;


示例:
#include <stdlib.h>
#include <stdio.h>
//定义枚举
enum weekDay{
	MON,        //0
	TUES,		//1
	WED,		//2
	THUR,		//3
	FRI
};

//type定义类型
typedef struct{
	int num;
	int age;
	char sex;
}Person;
//声明一个整形数组类型
typedef int NUM10[10]; 

int main(){
	enum color{ red, green, blue };
	enum color mycolor;
	mycolor = red;

	//定义一个枚举变量,并赋值
	enum weekDay myday;
	//myday = 1;//ERROR
	myday = TUES;
	printf("Data:%d\n", myday);

	//枚举变量的使用
	enum weekDay day1;
	int dayNum;
	printf("input a num:");
	scanf("%d", &dayNum);
	day1 = (enum weekDay)dayNum;//类型转换为枚举类型
	switch (day1){
	case MON:
		printf("monday\n");
		break;
	case TUES:
		printf("tuesday\n");
		break;
	case WED:
		printf("wedsday\n");
		break;
	case THUR:
		printf("thursday\n");
		break;
	}

	//test struct
	Person one;
	one.age = 12;
	one.num = 10010;
	one.sex = 'F';
	printf("Person: %d  %d  %c\n", one.age, one.num, one.sex);

	NUM10 array;
	for (int i = 0; i < 10; i++){
		array[i] = i + 1;
	}
	for (int i = 0; i < 10; i++){
		printf("%5d", array[i]);
	}
	puts("\n");
	
}
结果:





  • 5
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值