温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

C语言函数指针怎么用

发布时间:2022-01-06 14:35:59 来源:亿速云 阅读:113 作者:iii 栏目:开发技术

这篇文章主要介绍“C语言函数指针怎么用”,在日常操作中,相信很多人在C语言函数指针怎么用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”C语言函数指针怎么用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

定义方法

对于一个函数如下:

<返回值类型> func (<参数1类型> <参数1>,...)
 其函数指针的格式为
<返回值类型> (*<指针名>) (<参数1类型> <参数1>,...)
 如下是实例:

定义如下一个函数指针

int main(int argc ,char* argv[]){
    double (*a)(int n1,int n1) = NULL;
}
这里a的含义是指向参数为整型n1,整型n2,返回值为double的函数的指针,实操中可以省略参数名,只留下参数类型,如下:
double (*a)(int ,int ) = NULL;
 而如下是指向返回值为指针类型的函数:
double* (*a)(double* ,int ) = foo;

赋值方法

函数名其实就是函数的地址,我们只需要将这个地址赋值给函数指针即可,如下

#include<stdio.h>

double* foo(double *a ,int b){
    return a;
}

int main(int argc ,char* argv[]){
    double* (*a)(double* ,int ) = foo;
}
 通过调试,我们可以轻松看到foo和a的值:

C语言函数指针怎么用

用途

函数指针a可以作为另外一个函数b的变量,实现在函数b中运行函数a

函数指针可以作为结构体的一个域,就像C++中的类函数一样

到此,关于“C语言函数指针怎么用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI