C++入门(3)——结构体、共用体、枚举和自定义类型

结构体:将不同数据类型组合在一起形成一个新的类型。

定义、声明(可在定义的时候声明)、引用结构体成员(成员运算符“ . ”、声明结构体指针,指向运算符“ -> ”)、初始化(在定义时可直接声明并赋值)、结构体嵌套

 

声明结构体指针变量:要引用结构体指针变量的成员,需要使用指向运算符“ -> ”;

结构体嵌套:1.在结构体中定义子结构体,并声明子结构体变量;2.在定义时声明其他已定义好的结构体变量

结构体数组:数组的元素时结构类型,结构体数组的每一个元素都是具有相同结构类型的结构变量

重命名数据类型:给一个数据类型定义一个别名。别名仍需要使用名字空间

共用体(联合体):关键字union。一个存储空间可变的数据类型。将不同的数据项组织为一个整体,在内存中占用首地址相同的一段存储单元。

引用共用体对象成员:使用“ . ”成员运算符。

 

 

枚举:特殊的常量。用枚举类型声明的变量,其变量的值只能取自括号内的这些标识符。编译器默认将标识符自动赋上整型常数。可以自行修改整型常数的值。如果只给前几个标识符赋整型常数,编译器会给后面标识符自动累加赋值。

枚举数据类型的定义、枚举类型变量的声明

自定义类型:增加了代码的复用性。自己定义类型说明符

宏定义:替换源代码中字符串的机制。可分为带参数的宏定义与不带参数的宏定义。可以用#undef命令终止宏定义的作用域。

 

tips:1.结构体变量做参数,函数的形参的结构体类型名前要加上struct关键字;

         2.一个共用体变量不能同时存放多个成员的值,某一时刻只能存放其中的一个成员的值;

         3.不能引用共用体变量,而只能引用共用体变量中的成员;

         4.给枚举变量赋值只能赋予该枚举类型定义时花括号里的值;不能直接给枚举变量赋整数数值,但是可以通过强制类型转换,将整数转化为合适的枚举型数值

        5.#define命令就是定义一个可替换的宏。宏名一般习惯用大写字母表示,以便与变量名相区别。

        6.宏定义时参数要加括号。eg:#define MUL(x,y) x*y   =>#define MUL(x,y) (x)*(y)

        7.宏扩展必须使用括号来保护表达式中低优先级的操作符。eg: #define ADD(x,y)  x+y  ;a=3*ADD(3,4) =>a=3*(ADD(3,4));

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值