今日主要学习指针的应用
const的用法
const int i = 10;通过变量名无法直接访问,虽然不能直接访问,但是我们可以通过指针间接的访问来对其进行修改。比如:int *p = &i
const int *p 不能用指针进行修改
无法通过指针来进行修改,变量本身可以自身修改,但是不能使用该指针来进行修改。
用指针实现交换
万能指针 void * p 可以接受任何类型指针的地址。
注意:万能指针不能进行指针运算
指针函数
返回值为指针的函数(指针函数)
局部变量不建议使用,是因为,局部变量在创建的时候,用完也销毁,最好所指向的空间是一个野指针。
有两种解决办法
1、全局变量
2、加static 将动态的转换为静态
malloc函数
size 是需要申请内存空间大小的字节数,申请的字节是连续的
返回值是申请空间的元素的首地址
malloc 申请的空间是在堆上
释放完为野指针 ,所以在代码里面最好给其赋值为NULL指针。
malloc 分配空间,两次分配,结果空间不连续。
再次开辟空间,把原来的代码进行拷贝,并进行销毁。
指针逆序
数组的打印
快速排序
二分查找
选择排序(指针)
字符打印
字符串长度
字符串拷贝
strncpy
字符串连接
strncat
字符串比较
strncmp
冒泡排序
字符串中查找字符串