二进制 十六进制
变量 数据类型 数组 指针 函数
二进制:{
}
十六进制:{
}
变量:{
变量表示存储空间 存储空间可以存放任意数据
声明形式:<存储类型><数据类型> 变量名
存储类型:auto register static extern
详细理解请看 C语言的四种存储类型(auto register static extern) - 临时小驻 - OSCHINA - 中文开源技术交流社区
例:int a;//默认存储类型为auto
register 寄存器类型 特点:速度快
static 静态存储{
使用 static
修饰局部变量可以在函数调用之间保持局部变量的值。(生命周期会延长)
}
数据类型{
char:字符类型 1个字节 0~255 int:整型 4个字节 float: 单精度浮点型 4个字节 精度范围:6~7
}
}
数组:{
一片连续的储存空间(空间类型一模一样)
声明形式:<存储类型><数据类型> 数组名[元素个数];
}
指针:{
内存分为多个内存单元,每个内存单元都由一个或者多个字节组成,每个字节都有唯一的编号--地址 指针就是地址。
声明形式:<存储类型><数据类型> * 指针名;
数据类型: 指针所指向的空间类型 void *p; //表示指向任意类型的指针,在使用时要强转。
}
函数:{
程序可以分为多个代码模块,每个代码模块完成特定的功能,这种代码模块为函数。
声明形式:<存储类型><数据类型> 函数名(参数列表);
定义:<存储类型><数据类型> 函数名(参数列表)
{
函数体: 返回值;
}
数据类型:不由函数本身决定,而是由返回值决定;
返回值:调用该函数后,返回的结果
参数列表:形式参数列表,规定在使用该函数时需要传递什么类型的数据
函数指针: int (*p)(void);//p就表示可以指向函数。
}
结构:{
不同类型的集合
struct 结构名
{
int a;char b;
};
struct mode obj;
. : 成员运算符 obj.a = 100;
struct mode *p=&obj;
p->a==200; <==> (*p).a==200;
}