C指针编程之道--------笔记
来源:互联网 发布:熟练掌握编程 英文 编辑:程序博客网 时间:2024/04/30 14:06
1.指针作为函数参数传递,出入的是指针的地址.
2.可以通过指针形参改变变量的值,注意指针类型要相同。
3.函数指针
定义:数据类型 (*P)(void)
int (*p_fun)();返回值类型为int的函数指针,指针变量为(*p_fun),变量名为p_fun,括号不能省略.
指针变量在使用前要初始化。
4.函数指针与指针函数
返回值是指针的函数叫函数指针----函数。
函数指针-----是地址(变量)。
5.单向队列会产生假溢出【队列头有数据,但是不能插入数据】。
链队出队时要释放空间。
6.特殊线性表---堆栈
栈底不变,栈顶变化,先进后出
7.动态链表
链表----链式存储的线性表
链表的连接和物理顺序没有关系。
分类:
静态链表,动态链表;单链表,双链表,循环链表
const指针
const int *p p是指向整形常量的指针,可以修改指针的值【地址可以修改】,但是不能修改指针指向的值。
和 int const *p相同
int *const p p是一个常指针,p是常量,值无法修改【地址无法修改】,但是可以修改p所指向的整形值。
指针的地址不能修改,但是值可以改。
const int *const p 指针的地址和都不能修改。
判断方法
const int *===p const位于左侧,修饰变量。指针指向为常量。
int *===const p cosnt位于右侧,修饰指针。指针为常量。
const 做形参
void fun(const int *p) cosnt用于函数形参是说明形参在函数内部是不会改变的,
const用在函数返回值
const int fun();返回值不能更新,为内部类型【true or false】
数组中不允许使用const定义的值。 const int a; int bb[a];错误
volatile
嵌入式系统的寄存器定义;中断中的变量;多任务的共享变量。
register 变量存储在机器的硬件寄存器中而不是内存中。
访问效率高,速度快,数量有限。
2.可以通过指针形参改变变量的值,注意指针类型要相同。
3.函数指针
定义:数据类型 (*P)(void)
int (*p_fun)();返回值类型为int的函数指针,指针变量为(*p_fun),变量名为p_fun,括号不能省略.
指针变量在使用前要初始化。
4.函数指针与指针函数
返回值是指针的函数叫函数指针----函数。
函数指针-----是地址(变量)。
5.单向队列会产生假溢出【队列头有数据,但是不能插入数据】。
链队出队时要释放空间。
6.特殊线性表---堆栈
栈底不变,栈顶变化,先进后出
7.动态链表
链表----链式存储的线性表
链表的连接和物理顺序没有关系。
分类:
静态链表,动态链表;单链表,双链表,循环链表
const指针
const int *p p是指向整形常量的指针,可以修改指针的值【地址可以修改】,但是不能修改指针指向的值。
和 int const *p相同
int *const p p是一个常指针,p是常量,值无法修改【地址无法修改】,但是可以修改p所指向的整形值。
指针的地址不能修改,但是值可以改。
const int *const p 指针的地址和都不能修改。
判断方法
const int *===p const位于左侧,修饰变量。指针指向为常量。
int *===const p cosnt位于右侧,修饰指针。指针为常量。
const 做形参
void fun(const int *p) cosnt用于函数形参是说明形参在函数内部是不会改变的,
const用在函数返回值
const int fun();返回值不能更新,为内部类型【true or false】
数组中不允许使用const定义的值。 const int a; int bb[a];错误
volatile
嵌入式系统的寄存器定义;中断中的变量;多任务的共享变量。
register 变量存储在机器的硬件寄存器中而不是内存中。
访问效率高,速度快,数量有限。
0 0
- C指针编程之道 ---第一次笔记
- C指针编程之道 ---第二次笔记
- C指针编程之道 ---第三次笔记
- C指针编程之道--------笔记
- C指针编程之道 ---第四次笔记
- C指针编程之道 ---第五次笔记
- C指针编程之道 ---第六次笔记
- C指针编程之道 ---第七次笔记
- C指针编程之道 ---第八次笔记
- C指针编程之道 ---第九次笔记
- C指针编程之道 ---第十次笔记
- C指针编程之道 ---第十一次笔记
- C指针编程之道 -1
- 摘自C指针编程之道-队列
- C指针编程之道(一)- 指针与数组
- C指针编程之道(二)- 指针与函数
- 学习笔记:指针之C
- C语言之指针笔记
- eclipse(基础三) eclipse配置jdk详细图解
- 【Cocos2d】3.0版本在Windows平台下的音量调节修改问题
- MySQL事务隔离级别详解
- 蚂蚁感冒
- tcp数据重传时间细节探秘及数据中心优化
- C指针编程之道--------笔记
- Extjs4X的Itemselector插件使用
- ios-事件响应者链
- Erlang-实现进程环
- container_of宏定义解析
- 返回json的型式的用法
- C语言指针与二维数组
- C# Why does '+' + a short convert to 44
- Android判断上网方式(Wifi还是数据流量)