2014.9.30
来源:互联网 发布:图片切片软件 编辑:程序博客网 时间:2024/04/29 14:20
国庆前的最后一天,终于感觉开始正常工作了,时间过的好快,可能我这种没有计划做事习惯的人总是会被这样那样的接口把原定的事情打乱。
所以,希望接下来的一个月,可以把这个项目完成的漂漂亮亮的,所以现在要做的就是,在十一国庆长假里,先把前段时间花的钱剩下来,再就是把代码彻底搞懂,并自己尝试写一些代码。
好了,开始今天的工作总结:
1、关于指针函数与函数指针
这个问题纠结了很久,学了一次动了一次,可却又忘了一次。
指针函数:重点在于它是一个函数,返回的是指针。一般形式如:
类型标识符 *函数名(参数表)
int *f(x,y);
首先它是一个函数,只不过这个函数的返回值是一个地址值。函数返回值必须用同类型的指针变量来接受,也就是说,指针函数一定有函数返回值,而且,在主调函数中,函数返回值必须赋给同类型的指针变量。
辨别的关键在于,看定义是*号是否被括号包括在内,若不包括在内,则为指针函数
函数指针:是指向函数的指针变量,即本质是一个指针变量
int (*f) (int x); /* 声明一个函数指针 */
f=func; /* 将func函数的首地址赋给指针f */
此时,f是一个指针变量,故将函数名func即函数的地址赋值给指针变量f这个指针指向一个返回整型值的函数
指针函数最终是个函数,其变量是函数,并且返回的是一个指针
函数指针最终是个指针,其变量是指针,并且是指向函数的指针,*fun则表示函数调用
在指针函数中,有这样一类函数,它们也返回指针,但是这个指针不是指向int、char之类的基本类型,而是指向函数。对于初学者,别说写出这样的函数声明,就是看到这样的写法也是一头雾水。比如,下面的语句:
我们用上面介绍的方法分析一下,ff首先与后面的“()”结合,即:
也就意味着,ff是一个函数。
这种写法确实让人非常难懂,以至于一些初学者产生误解,认为写出别人看不懂的代码才能显示自己水平高。而事实上恰好相反,能否写出通俗易懂的代码是衡量程序员是否优秀的标准。一般来说,用typedef关键字会使该声明更简单易懂。在前面我们已经见过:
也就是说,PF是一个函数指针“变量”。当使用typedef声明后,则PF就成为了一个函数指针“类型”,即:
这样就定义了返回值的类型。然后,再用PF作为返回值来声明函数:
- 2014.9.30
- 【记录吧】2014.9.30
- adb命令卸载/system/app下的apk 2014.9.30
- 2014.9.11
- 2014.9.17
- 2014.9.17
- 2014.9.18
- 2014.9.20
- 2014.9.21
- 2014.9.25
- 2014.9.9 布局属性
- 10-2014.9.9
- 随笔(2014.9)
- 2014.9.10 暑假集训
- 2014.9~2015.3 读书心得
- 去哪网 2014.9.25 笔试题
- 2014.9.6模拟赛【工资】
- 生活工作记录2014.9.13
- java中如何添加滚动条
- CentOS Bash漏洞终极修复方法
- 计算任意一个UIView相对屏幕的坐标
- equals和hashCode方法详解
- ASCII码
- 2014.9.30
- 转载 - 大型网站的灵魂——性能
- Gson解析简单json以及复杂的json数据
- 在Linux上安装Node.js
- 网店不盈利如何解决?
- Android中putString()和getString()用法
- 网店交易的发展趋势和个人的一些看法
- Android三级存储——将网络数据存储到内存和缓存
- python 系统学习笔记(十二)---os os.path os.walk