赞
踩
语法:
struct 结构体名
{
结构体成员列表
};
作用
将自定义的结构体放入到数组中方便维护
语法
struct 结构体名 数组名[元素个数] = {{},{},……{}}
作用
通过指针访问结构体中的成员
语法
struct 结构体名 *指针名;
利用操作符 -> 可以通过结构体指针访问结构体属性
利用指针访问结构体数组
含义
结构体中的成员可以是另一个结构体
语法
struct 结构体名
{
struct 结构体名 成员名;
};
含义:
字节对齐主要是针对结构体而言的,通常编译器会自动对其成员变量进行对齐,以提高数据存取的效率;
作用:
平台原因(移植原因): 不是所有的硬件平台都能访问任意地址上的任意数据的;某些硬件平台只能在某些地址处取某些特定类型的数据,否则抛出硬件异常。 性能原因: 数据结构(尤其是栈)应该尽可能地在自然边界上对齐。 原因在于,为了访问未对齐的内存,处理器需要作两次内存访问;而对齐的内存访问仅需要一次访问。
所谓的“位域”是把一个字节中的二进制位分为几个不同的区域,并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。这样就可以把几个不同的对象用一个字节的二进制位域来表示。
位域的一般形式:
struct 位域结构体名
{
位域列表;
};
其中位域列表的形式为:
类型说明符 位域名:位域长度
struct 位域结构体名 变量名
struct 位域结构体名 变量名 = {成员1值,成员2值..}
定义位域结构体时顺便创建变量
在C语言中,不同数据类型的数据可以使用共同的存储区域,这种数据构造类型称为共用体,简称共用,又称联合体。
共用体在定义、说明和使用形式上与结构体相似。两者在本质上的不同仅在于使用你内存的方式上
定义:
语法:
union 共用体名
{
共用体成员列表
};
使用:
union 共用体名 变量名
union 共用体名 变量名 = {成员值}
定义共用体时顺便创建变量
C语言中构造类型之一
在开发中,有些变量只有几种可能的取值,比如:一周有七天、一年有四季、在枚举的定义中,会将变量一一列出来。
定义:
语法:
enum 枚举名
{
枚举成员列表
};
使用:
enum 枚举名 变量名
enum 枚举名 变量名 = 枚举常量
定义枚举时顺便创建变量
基本语法: typedef <已有数据类型> <新数据类型>; 如: typedef int INTEGER; 这里新定义了数据类型INTEGER, 其等价于int INTEGER i; <==> int i; 简单的新名字: typedef unsigned char u_int8; //8位无符号数 typedef unsigned short int u_int16; //16位无符号数 typedef unsigned int u_int32; //32位无符号数 化繁为简: typedef struct _node_ { int data; struct _node_ *next; } listnode, *linklist;
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。