volatile 保持内存的可见性
volatile const int a
const 修饰指针
const int *p p指向的内容不能改变 p可以指向其他内容
int * const p p不能指向别的内容 p指向的内容可以改变
const int **pp 不能通过二级指针来改变内容
int * *const pp pp不能指向别的一级指针
static
修饰
改变链接属性,只能在当前源文件访问
变量
函数
内存分配
1.栈区-由编译器自动分配释放,
存放为运行函数而分配的局部变量参数,返回数据,返回地址。操作方式类似栈
2.堆区-一般由程序员分配释放,分配方式类似于链表。
3.全局区(静态区)-全局变量,静态数据,常量。
4.文字常量区-常量字符串
5.程序代码区-存放函数体(类成员函数和全局函数)的二进制代码