美文网首页
函数指针

函数指针

作者: arkliu | 来源:发表于2022-10-08 19:39 被阅读0次

    函数指针

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #define STU_SIZE 3
    // 指针函数
    // ()优先级比*高,它是函数,返回值是指针类型的函数
    // 返回指针类型的函数
    int * fun() {
        int * p = (int *)malloc(sizeof(int));
        return p;
    }
    
    int fun2(int a) {
        printf("a = %d\n", a);
        return 0;
    }
    
    int main() {
        // 函数指针,是指针,指向函数的指针
        // 定义函数指针变量有三种方式:
    
        // 1. 先定义函数类型,根据类型定义指针变量
        // 有typedef是类型,没有是变量
        typedef int FUN(int a);
        FUN * p = NULL; //函数指针变量
        p = fun2; // p指向fun2函数
        p(3); // 函数指针变量调用方式
    
        // 2. 先定义函数指针类型,根据类型定义变量
        typedef int (*PFUN)(int a);
        PFUN p1 = fun2;
        p1(8);
    
        // 3. 直接定义函数指针变量
        int(*p2)(int a) = fun2;
        p2(55);
        return 0;
    }
    

    相关文章

      网友评论

          本文标题:函数指针

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