结构体与共用体

一、链表

1.尾插

 2.头删:

3.尾删:

 

4.内存泄漏:malloc调用的节点需要手动清除 

 

头删效率更高,算法复杂度更低

二、共用体

1.形式:union  共用体名{成员表列} 变量表列;共用体的成员会占用同样的内存空间

2.共用相同的内存空间(最大的),有效的为最后输入的字节

为了节省空间   共用体的覆盖总是向前顶,所以成员地址都相同

利用共用体,判断计算机的大小端

3.共用体的变量可以作为函数参数传递,通过指针传参

共用体也要遵循对齐原则

 三、枚举类型

如果一个变量只有几种可能,则可以将其定义为一个枚举类型

前方加enum(成员的取值为可能的枚举型常量)

枚举的常量可以自己定义,其本质为int  型

四、typedef定义类型

INT生成类型名,作用为已有的数据类型起别名

五、位运算

1.位运算符除~外均为双目运算符,运算量 只能是整形或字符型数据

2.按位与&:指定位清零

2.按位或:指定位置1,其他位置不变

3.按位异或:指定位翻转(相同为0,不同为1)(连续两次异或同一个数,还是数本身)

4.逻辑左移:抛掉最高位,低位补0

5.算数右移:有符号类型,最后一位移出去后,前面有可能补0(i 为正数),也有可能补1(i 为负数)

6.逻辑右移:无符号类型,最后一位移出去后,前面补0

建议编写参与位运算的数据类型时,标明是否有符号,即加signed 或 unsigned

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值