【笔记-C语言】 结构体
来源:互联网 发布:最优化数学基础 编辑:程序博客网 时间:2024/06/05 22:34
结构体: struct A{……};
定义:struct A a;
初始化:struct A a={*,*,……}
访问或初始化或修改:a.*;
typedef:给类型取别名
exp: typedef int INT;
与宏的区别:#define INT int
typedef struct{…}A;
此时A为类名,struct A等价于A
结构体指针: struct A *p=&a;
访问成员:(*p).i或者p->i
内存分配将结构体成员分配到内存的边界上,方便访问,整个的结构体长度必须保持为内部最长成员的整数倍
char(1) int(4) short(2) double(4,4)
exp1:
double(4,4)
下面两个char加两个填充共计4
char(1)
char(1)
*
*
总计占12个字节
出现最大倍数为4,double以后以4为块,两个char只占2,所以填充两个位
exp2:
char(1)
*
short(2)
char(1)
*
占六个字节
结构体位段:可以指定每个成员的大小,节约内存(大小指二进制数)
exp: int i:3;指定占三个二进制位
struct{int a:5;int b:2};
结构体大小4个字节,向结构体写入“1234”
内存中是对应ASICII码:00110000,00110001,00110010,00110011
a:5 b:2 则分别取:00110000,00110001,00110010,00110011
a:5 b:4 则分别取:00110000,00110001,00110010,00110011
b取出为:1001
- 【笔记-C语言】 结构体
- C语言-结构-笔记
- C语言学习笔记(20结构体)
- C语言学习笔记(21结构体)
- C语言笔记之结构体
- C语言学习笔记9--结构体
- c语言结构体学习笔记
- 013-结构体-C语言笔记
- c语言结构体复习笔记
- C语言结构体学习笔记
- c语言笔记;结构体;指针
- C语言学习:结构体(笔记)
- C语言笔记5--结构体
- C语言中结构体学习笔记
- C语言结构体—学习笔记
- C语言之结构体学习笔记
- 《linux C语言结构体》笔记
- C语言循环结构笔记
- SSL_2863 合并石子
- 设计模式C++实现(2)——策略模式
- Android Study 之 属性动画初识
- 重构代码
- java中自定义异常
- 【笔记-C语言】 结构体
- FAQ(7):Server Tomcat v8.0 Server at localhost failed to start.
- 18. 内联函数
- 矩阵乘法(一)
- 【笔记-C语言】 联合
- 设计模式C++实现(3)——适配器模式
- 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机)
- 167. Two Sum II
- 一边转载一边学习区块链