c语言中的布尔类型、枚举类型是个什么概念?
- 提问者网友:黑米和小志
- 2021-08-14 16:26
- 五星知识达人网友:平生事
- 2021-08-14 17:25
布尔型(Boolean)是一种数据的类型,这种类型只有两种值,即"真"与"假"。 布尔常量 在Pascal语言中"真"用ture表示,"假"用False表示。所以布尔类型只有TRUE与FALSE两个常量。
C语言或C++的一种构造类型,它用于声明一组命名的常数。
(1)枚举的声明:枚举声明用于声明新的枚举类型。
访问修辞符 enum 枚举名:基础类型
{
枚举成员
} ;
基础类型必须能够表示该枚举中定义的所有枚举数值。枚举声明可以显式地声明 byte、sbyte、short、ushort、int、uint、long 或 ulong 类型作为对应的基础类型。没有显式地声明基础类型的枚举声明意味着所对应的基础类型是 int。
(2)枚举成员
枚举成员是该枚举类型的命名常数。任意两个枚举成员不能具有相同的名称。每个枚举成员均具有相关联的常数值。此值的类型就是枚举的基础类型。每个枚举成员的常数值必须在该枚举的基础类型的范围之内。
示例:
public enum TimeofDay:uint
{
Morning=-3,
Afternoon=-2,
Evening=-1
} ;
产生编译时错误,原因是常数值 -1、-2 和 –3 不在基础整型 uint 的范围内。
- 1楼网友:一袍清酒付
- 2021-08-14 22:21
你可以这样理解,布尔类型就是只有true和false两个值,一般是用来做标记位的~枚举类型就是可以是你设定的可能出现的所有类型,比如,一星期有七天,你可以设一个枚举型变量,它的值可以为:星期一,星期二……星期日中的一个,超出这个范围就是不允许的了
- 2楼网友:夜余生
- 2021-08-14 22:10
在枚举类型的定义中列举出所有可能的取值, 被说明为该枚举类型的变量取值不能超过定义的范围, 枚举类型是一种基本数据类型,而不是一种构造类型
enum 枚举名 { 枚举值表 }; 在枚举值表中应罗列出所有可用值。这些值也称为枚举元素。
标准C语言是没有布尔的,C++就有,非0表示真,0表示假
- 3楼网友:佘樂
- 2021-08-14 20:39
布尔型的值只能是true和false,一般用于标记。
枚举型就是一组常量,就像选择题一样,选取其中的。
- 4楼网友:一叶十三刺
- 2021-08-14 19:01
c++有bool类型,标准C没有布尔类型,用整型代替布尔类型,非0表示真,0表示假,BOOL就是int 。
枚举是用标识符表示的整型常数集合,这些常数是该类型变量可取的合法值,这些标识符称为枚举常量。 定义:enum<枚举名>{<标识符1>,<标识符2>...<标识符n>}; 比如enum weekday{sun,mon,tue}; 就表示定义了3个枚举型常量,默认他们的值是从0开始,依次递增,也就是sum=0,mon=1,tue=2 你也可以直接给他们赋值,比如enum weekday{sun=1,mon,tue}; 如果这样的话mon的值就为2,tue的值就为3. 你也可以用其他变量代替枚举常量的值,比如 enum weekday{sun,mon,tue}a,b,c; a=sun; b=mon; c=tue; 如果输出的话a=0,b=1,c=2