指针函数与函数指针,指针数组及数组指针
2012-11-22 18:50
246 查看
一 指针函数与函数指针
1、指针函数:本质还是函数,返回一个某一类型的指针。
类型标识符 *函数名(参数表)
int *f(x,y);
比如: char* f();
char* p;
p = f();
2、函数指针:一个指针指向某一个函数,本质是一个指针。
int (*f) (int x); // 声明一个函数指针
f=func; //将func函数的首地址赋给指针f
void (*fptr)();
fptr=&Function;(或者fptr=Function;)
可以采用如下两种方式来通过指针调用函数:
x=(*fptr)();
x=fptr();
二 指针数组及数组指针
1、指针数组:本质是一个数组,比如
float**def[10]
一个含有10个元素的数组,数组的元素类型为float**,指向float*对象的指针
2、数组指针:是一个指针
float(**def)[10]
一个指针,这个指针(def)指向另一个指针(tmp),而这另一个指针(tmp)指向一个数组元素为float变量的大小为10的数组,以下代码说明了这个意思
三、其他一些类型
float*(*def)[10]
一个指向数组的指针,这个数组大小为10,元素类型为float*。
float (*def)(int)
一个指向函数的指针,这个函数接受一个int值作为参数,返回值为float型。
float (*def[10])()
一个数组,这个数组有10个元素,每个元素都为指向函数的指针,这些函数无参数且返回值为float型。
最变态的一个:
int (*(*def)(int, int))(int)
是一个指向函数的指针,指向的函数的类型是有两个int参数并且返回一个函数指针的函数,返回的函数指针指向有一个int参数且返回int的函数。
1、指针函数:本质还是函数,返回一个某一类型的指针。
类型标识符 *函数名(参数表)
int *f(x,y);
比如: char* f();
char* p;
p = f();
2、函数指针:一个指针指向某一个函数,本质是一个指针。
int (*f) (int x); // 声明一个函数指针
f=func; //将func函数的首地址赋给指针f
void (*fptr)();
fptr=&Function;(或者fptr=Function;)
可以采用如下两种方式来通过指针调用函数:
x=(*fptr)();
x=fptr();
二 指针数组及数组指针
1、指针数组:本质是一个数组,比如
float**def[10]
一个含有10个元素的数组,数组的元素类型为float**,指向float*对象的指针
2、数组指针:是一个指针
float(**def)[10]
一个指针,这个指针(def)指向另一个指针(tmp),而这另一个指针(tmp)指向一个数组元素为float变量的大小为10的数组,以下代码说明了这个意思
float arr[10]={1.0f,1.0f,1.0f,1.0f,1.0f,1.0f,1.0f,1.0f,1.0f,1.0f}; float (*p)[10]=&arr; float (**def)[10]=&p;
三、其他一些类型
float*(*def)[10]
一个指向数组的指针,这个数组大小为10,元素类型为float*。
float (*def)(int)
一个指向函数的指针,这个函数接受一个int值作为参数,返回值为float型。
float (*def[10])()
一个数组,这个数组有10个元素,每个元素都为指向函数的指针,这些函数无参数且返回值为float型。
最变态的一个:
int (*(*def)(int, int))(int)
是一个指向函数的指针,指向的函数的类型是有两个int参数并且返回一个函数指针的函数,返回的函数指针指向有一个int参数且返回int的函数。
相关文章推荐
- C语言指针系列 - 一级指针.一维数组,二级指针,二维数组,指针数组,数组指针,函数指针,指针函数
- 浅析指针数组、数组指针、函数指针、指针函数、函数指针数组的指针
- C++中的指针、数组指针与指针数组、函数指针与指针函数
- 指针数组、数组指针与指针函数、函数指针
- C++中的指针、数组指针与指针数组、函数指针与指针函数
- 笔试题-输入一个字符数组将这些字符串按顺序合并输出-指针数组-数组指针-函数指针-指针函数
- 指针函数、函数指针、指针数组、数组指针
- 指针数组、数组指针、函数指针、指针函数总结
- 指针数组,数组指针,函数指针,指针函数,多级指针
- 数组和指针、数组指针和指针数组、函数指针和指针函数、数组标识符的意义、静态和动态创建的数组的本质区别、标识符类型判断方法
- 指针数组、数组指针、函数指针、指针函数总结C++
- C++中的指针、数组指针与指针数组、函数指针与指针函数
- C程序设计语言--指针与数组(二) 指针数组 数组指针 函数指针 指针函数
- (指针常量,常量指针)-(函数指针,指针函数)-(指针数组,数组指针)
- 常量指针、指针常量、指针函数、函数指针、指针数组、数组指针区别在哪里?
- C语言指针系列 - 一级指针.一维数组,二级指针,二维数组,指针数组,数组指针,函数指针,指针函数
- 数组指针,指针数组,函数指针,指针函数
- 苏嵌21 16.11.25补充内容 指针数组 数组指针 函数指针 指针函数数组
- 指针数组--数组指针,指针函数--函数指针,类模板--模板类,函数模板--模板函数 的区别