黑马程序员技术交流社区

标题: 枚举和结构体的异同点 [打印本页]

作者:   张恒宇    时间: 2015-5-9 23:24
标题: 枚举和结构体的异同点
枚举和结构体的定义和调用很相似。。。。但是枚举的型参是固定的几个值。他需要反馈固定的值。而结构体就没有太多的限制了。。
简单的举个例子吧
#include<stdio.h>
int main()
{
enum sex
{ man,
woman,
unkown
};
enum sex s = man and woman or unkown!//这粒赋值的时候就只能选这三项了!由于编译器的容错能力可能赋其他值也是不会抱错但是枚举久没有意义了!
printf("%d\n",s); //这里打印的是s的整型值也就说在枚举中的三个字符参数对应了自己的值从上倒下分别是0,1,2一次类推!
return 0;
}
结构体:struct student
{
int age;
int no;
char *name;
};

struct student stu ={20,1,"jick" };
printf("%d,%d,%s\n",stu.age,stu.no,stu.name);
作者: asd26187    时间: 2015-5-9 23:46
多谢分享!!!
作者: cui0wei0    时间: 2015-5-10 02:23
枚举里都是常量, 不能改变. 结构体里都是变量, 可以赋值
作者: Rdxer    时间: 2015-5-10 10:16
枚举只有一个,,可以有结构体有很多了,        学过面向对象的就会发现,结构体是类的雏形,,
作者: Rdxer    时间: 2015-5-10 10:17
楼上我表述不清,,第二句,,结构体可以有很多,,
作者: 中哥太强大了    时间: 2015-5-11 09:51
多谢分享!
作者: 何志祥    时间: 2015-5-14 10:50
我记得枚举大括号后面有枚举名吧~~~




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2