美文网首页
c基础 - 函数指针定义

c基础 - 函数指针定义

作者: 世道无情 | 来源:发表于2019-03-02 05:57 被阅读0次

前言

变量:就是给内存地址取一个别名;

1. 函数指针

函数指针用的最多的就是 回调,在 java中一般是通过对象、通过接口来回调,在c和c++中就是通过 函数指针来实现回调

2. 格式

方法的返回值( * 方法的名称)(方法的参数)
比如:void(*add_p)(int, int);

3. 示例代码如下

// 函数指针,相当于 回调

// 两个数相加
void add(int num1 , int num2){
    printf("num1 + num2 = %d\n" , (num1+num2));  // num1 + num2 = 3
}

// 两个数相减
void mins(int num1, int num2){
    printf("num1 - num2 = %d", (num1 - num2));  // num1 - num2 = -1
}

// 参数1:方法指针(类似于java中的接口),两个数
void operate(void(method)(int,int) , int num1 , int num2){
    method(num1, num2);
}


void main(){

    // 在这个Simple.cpp中可以直接用下边方式调用;
    add(1,2);  

    // 但是想要在另一个文件调用add方法,就不能这么调用了,其实另外一个文件也是可以调用这个方法的,需要把 函数指针传给另一个方法就可以

    // 方法指针的定义格式如下: 
    // 方法的返回值* (方法的名称)(方法的参数)
    // void* (add_p)(int, int);

    operate(add , 1 , 2);
    operate(mins, 1, 2);

    getchar();
}

相关文章

  • c基础 - 函数指针定义

    前言 变量:就是给内存地址取一个别名; 1. 函数指针 函数指针用的最多的就是 回调,在 java中一般是通...

  • C语言基础及指针⑤动态内存分配

    接续上篇C语言基础及指针④函数指针 在上一篇我们了解C语言中的函数及函数指针 , 使用函数指针 , 模拟了网络请求...

  • C语言特性(函数与指针)

    函数与指针 用函数指针变量调用函数 当定义函数之后,C语言允许定义一个指针变量来指向该函数,接下来就可通过该指针变...

  • c++ 指针

    原文地址摘要:这篇文章详细介绍C/C++的函数指针,请先看以下几个主题:使用函数指针定义新的类型、使用函数指针作为...

  • C++学习笔记(与安卓平台无关)

    C++语法 const指针 template定义 定义函数时参数类型的选择 函数参数可以传值,传引用或者传指针,如...

  • 2018-05-24

    基础不够扎实,听的懂做不出来 函数指针复习 行指针 指针数组 新知识 函数声明 函数定义 函数调用 函数名相同,型...

  • C语言

    C 指针、指针变量、函数指针、指针函数、指针数组、数组指针、C 数组

  • 谭浩强版C语言问题(第八章:指针:指针指向函数)

    一、在C中定义指针指向函数的方法:int (p) (int ,int );int 是函数的返回值(p)是定义的指针...

  • Block的深入学习

    (一)Block基础回顾 1.Block定义 带有局部变量的匿名函数,差不多就与C语言中的函数指针类似,可以当做参...

  • iOS - 初识 block

    block定义 格式: 返回类型 (^block名字) (参数列表); 同C语言的定义函数指针一样,C语言的函数指...

网友评论

      本文标题:c基础 - 函数指针定义

      本文链接:https://www.haomeiwen.com/subject/ylluwftx.html