C算法-------指针操作
来源:互联网 发布:一搜同志个人网络东北 编辑:程序博客网 时间:2024/06/07 16:00
在语言中,指针的重要ixng不言而喻,但很多时候指针被认为是一把双刃剑。一方面,
指针是构建数据结构和操作内存的精确而高效的,另一方面,指针是有很容易被程序员
误操作,从而造成不必要的BUG。
1 、 存储空间分配
当生命一个指针时,通常情况下会分配一个字长的存储空间;当生命一个指针时,仅仅
只是为指针本身分配了空间,并未有给指针所指向的数据分配空间,而为数据分配存储空
间有两种方法:一是,直接声明变量;另一种是在运行时动态地分配存储空间(mallo或者
realloc);
2、函数指针
函数指针是指向可执行代码段或者调用可执行代码段的信息块的指针,而不是某种数据的指针,
函数指针将函数当作普通的数据那样存储和管理。
例如 声明 一个函数指针:
int (*match)( void * key_1,void * key_2);
以上函数的意思是 申明一个函数指针,他接受两个指针参数,返回值个整数。
例如有个函数
int match_int(void *x,void*y)
那么可以这样赋值的 match = match_int;
当腰执行一个函数指针所引用的函数,如下:
int result ;
result = match(&x,&y);
函数指针最重要的用途是将函数封装在数据结构中。
3 引用调用
指针还经常用于引用方式(by reference)传递参数的函数当中。通过引用方式传递的参数
可以用来返回函数的执行结果,或者减少参数赋值所带来的开销。如果是指针类型的参数
用来返回函数的执行结果,则可以在函数体内发现对该参数的赋值结果操作。例如下面的
例子;
intgetGidByName(char *name,int *gid){ [...] *gid = ptr->gid; return 0;}
这个函数的返回值仅用来表明函数的出错情况。
- C算法-------指针操作
- C算法->指针操作
- C指针操作
- 诠释C指针操作
- C的指针操作
- C语言指针操作
- C语言指针操作
- C指针操作
- c语言指针操作
- C语言-指针操作
- C++this指针操作
- C指针操作(一)
- C语言 指针操作练习
- C语言中的指针操作
- C语言入门指针操作
- C中指针 ++与*操作
- C语言指针的操作
- C语言之指针操作
- android左右滑动加载分页以及动态加载数据
- matlab在64位的机子上不能运行notebook解决方法
- 发现struts2中一种比较奇怪的现象,求解释(加#与不加)
- Android HAL原理实现& GPS HAL实现
- python实现邮件的发送
- C算法-------指针操作
- sqlserver中根据值查找所在的表以及字段
- 理解Cocoa的委托 数据源和控制器
- 实现strstr函数
- 关于<img>标签的一点理解
- hdu_4476_Cut the rope
- 信号与系统9:傅里叶变换性质
- Oc-内存管理
- IPS屏幕