c语言空函数指针 c语言的空指针

C语言函数指针定义

在最上面加一句这样的定义

成都创新互联公司是一家专注于成都做网站、成都网站建设与策划设计,宜兴网站建设哪家好?成都创新互联公司做网站,专注于网站建设十载,网设计领域的专业建站公司;建站业务涵盖:宜兴等地区。宜兴做网站价格咨询:18982081108

typedef void*(*pFn)();

pFn可以这样理解:首先pFn是一个指针,指针指向一个函数(或者说pFn是一个函数指针),此函数返回一个无类迹辩型的指针。最终定义的变量及函数都是指针罢了,不过是指针的类型不同。所以在编译时会有警告,说指针类型不匹配。但对于程序来讲,都旅穗是可以在特定的上下文中使用的。

运行结果是

t1,t2交替出现。

其实void也可以换为其它的类型如int, double等

又想到一个很好的办法:

这次编译不会有警告,运行也不会出错。

示例代码如下所示

#include stdio.h

long t1();

long t2();

int main()

{

long(*fn)()= (long (*)()) t1 ;

while(1){

fn = (long (*)()) fn();

}

}

long t1()

{

printf("t1\n");

return (long)t2 ;

}

long t2()

{

printf("t2\拆州卜n");

return (long)t1 ;

}


名称栏目:c语言空函数指针 c语言的空指针
网站地址:http://pwwzsj.com/article/dshodij.html