c语言关于函数指针和指针函数的区别

函数指针顾名思义指向函数的指针,其重点在于是一个指针,该指针与普通指针变量的区别是指向的对象是函数。例如:

  void (*p)(void);其指针p指向的对象是函数 void inerface (void).

函数指针一般较常用,其在嵌入式开发中,一般用于多个硬件界面状态的切换。

void main()

{

 void (*p)(void);//定义一个函数指针

int a=1;

if(a==1)

{p=interface1;}//p指向interface1函数

else

{

p=interface2;//p指向interface2函数

}

p();//执行函数指针指向的对象

}

指针函数顾名思义是一个函数,其返回值的类型为指针。例如:

int *p(void);其返回值是一个整型的指针变量。

void main(void)

{

p();

}

int *p(void)

 {

int a=1;

int *b;

b=a;//

return b;//返回值是一个指针,其指向int变量a

指针函数一般用于输出字符串的、数组等多数据场合,用于输出字符串的数据

}

 

posted @ 2020-02-10 18:24  fjc0000  阅读(159)  评论(0编辑  收藏  举报