VC++ 关于函数指针和指针函数的简单介绍

例题1:写成函数指针、函数返回指针、const指针、指向constr的指针、指向const的const指针

	void(*f)();
	void* f();
	const int*;
	int* const;
	const int* const;

例题2:下面的函数声明都代表什么?

	float(**def)[10];//(1)
	double *(*gh)[10];//(2)
	double(*f[10])();//(3)
	int*((*b)[10]);//(4)
	long (*fun)(int);//(5)
	int(*(*F)(int,int))(int);//(6)

(1)def是一个二级指针,指向的是一个一位数组的指针,数组的元素都是float类型。

(2)gh是一个指针,指向一个一位数组,数组的元素都是double*。

(3)f是数组,f有10个元素,元素都是函数的指针,指向的函数类型是没有参数且返回double的函数。

(4)b是一个指针,指向一个一位数组,数组的元素都是int*。

(5)fun是一个函数指针

(6)f是一个函数的指针,指向的函数的类型是有两个int参数并且返回一个函数指针的函数,返回的函数指针指向有个int参数且返回int的函数。

发布了87 篇原创文章 · 获赞 14 · 访问量 14万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章