Chinaunix首页 | 论坛 | 博客
  • 博客访问: 209374
  • 博文数量: 80
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 824
  • 用 户 组: 普通用户
  • 注册时间: 2014-06-12 21:40
个人简介

只有今天的埋头,才有明天的出头。

文章分类

全部博文(80)

文章存档

2014年(80)

我的朋友

分类: C/C++

2014-10-13 22:48:19

C中的函数有自己特定的类型,函数的类型有返回值、参数类型、参数个数共同决定

例如:int add(int i, int j)的类型为int(int, int)

C中通过typedef为函数类型重命名typedef type name(parameter list)

例如:typedef int f(int, int); typedef void p(int)

函数指针用于指向一个函数,函数名是执行函数体的入口地址

可通过函数类型定义函数指针:FuncType* pointer;

也可直接定义:type(*pointer)(parameter list); 其中pointer为函数指针变量名,type为指向函数返回值类型,parameter list 为指向函数的参数类型列表。


回调函数是利用函数指针实现的一种调用机制。

回调机制原理:

调用者不知道具体事情发生的时候需要调用的具体函数;被调用者不知道何时被调用只知道调用后需要完成的任务;当具体事件发生时,调用者通过函数指针调用具体函数;回调机制将调用者和被调用者分开两者互不依赖。



指针阅读技巧:

——右左法则

1.    从最里层的圆括号中未定义的标示符看起

2.    首先往右看,再往左看

3.    当遇到圆括号或者方括号是可以确定部分类型并调转方向

4.    重复2,3步骤直到阅读结束。
怎样阅读复杂指针?

阅读(1053) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~