结构体声明
结构体定义
结构体应用
结构体与数组
结构体也属于构造类型。结构体比数组更加灵活,可以存放不同类型的变量。
结构体是由若干成员组成的,成员既可以是基本数据类型,又可以是构造类型,比如数组。
结构体属于自定义数据类型。
1.结构体声明:
struct
结构体名
{
类型说明符 成员名;
…;
类型说明符 成员名;
};//注意此处分号不能少。
结构体是自定义类型,结构体变量是由结构体类型修饰的变量。
定义结构体变量
struct
结构体名 变量名 ={初值};
结构体成员访问
结构体成员的表示形式
结构体变量
.成员
typedef为现有的类型创建一个新的名字,或成为类型别名,
typedef
原类型 新类型
typedef
int Integer
这样 int
a =10;
可以写成
Integer a = 10;
结构体变量可以直接赋值。
注意:
虽然数组和结构体都属于构造类型,但是结构体变量能直接赋值,数组不能直接赋值。
小技巧:
可以通过把数组放在结构体内实现数组的直接赋值。
结构体内存占用
结构体所占的空间可以简单的认为是各个成员所占内存的空间之和。
实际上是最大成员变量所占空间的最小整数倍。
当数组这种构造类型的数据整体所占的字节数大于结构体成员变量中最大的数据类型所占的字节数时,数组就会拆分对齐。
计算机中内存对齐原则的本质就是为了cpu能够高效的通过地址访问相关内存。
结构体嵌套
结构体的成员仍然可以是结构体。
结构体数组
可以将多个结构体变量放到数组中,构成结构体数组。
例如:struct
stu students[10]
可以通过下标可以访问每个结构体变量。
结构体
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
磁盘空间不足-改注册表
zongxn
2019-02-23 13:41:43
关于VMware 虚拟机磁盘类型和区别
Dreams小強
2019-02-23 13:26:36
免费空间
msr520530512
2019-02-23 13:20:48
我的家园互动平台空间
hainuo
2019-02-23 13:07:39
Mysqldump参数大全
粉魚兒
2019-02-23 00:41:20
linux socket服务器框架
947154267yjn
2019-02-23 00:37:26
ESXI精简模式虚拟磁盘空间释放
瘋狂小二丶
2019-02-23 00:33:45
Lintcode6 Merge Two Sorted Arrays solution 题解
coderer
2019-02-23 00:24:31
微距摄影昆虫拍摄技巧
ziji24
2019-02-23 13:25:32
去除RMVB的内嵌字幕方法
當鋪老闆
2019-02-23 13:13:15