• 指向数组的指针,指向函数的指针


    指向数组的指针:int(*p)[5];

    定义了一个指向数组元素为int型的元素个数为5的一维数组;

    也可以理解为二维数组的首元素就像int*p指向int型可以理解为一维数组的首元素;

    也可以理解为*p为一个指针,指针里面的内容是一个有5个int值的数组;*p=a[5];

    其中,"类型说明符"为所指数组的数据类型。"*"表示其后的变量是指针类型。"长度"表示二维数组分解为多个一维数组时,一维数组的长度,也就是二维数组的列数。注意,"*(指针变量名)"两边的括号不可少,如缺少括号则表示的是指针数组。

    p指向二维数组的第一个元素a[0]; 其值等于 a,a[0],&a[0][0];

    p+i 等于a[i];

    *(p+i)+j等于 a[i][j];

    指针数组:int* array[5];

    表示数组元素为int型指针的一维数组;

    指向函数的指针:int (*pfun)(parameter);

    上面定义了 一个指向 返回值是int型, 参数是parameter 的形参的 函数指针pfun

    typedef int (*PFUN)(int a, int b);

    PFUN fun;

    int a = (*fun)(2, 3);

    返回指针的函数:int* fun(parameter);

    返回指向函数的指针的函数:

    //函数形式是set_handler(void(*f)())
    //返回指向(返回值是void,参数是void的函数)指针
    //可以理解为void (*tmp)();
    //tmp = set_handler(void(*f())
    void (* set_handler(void(*f)()))()
    {
        cout << "set_handler" << endl;
        return f;
    }



  • 相关阅读:
    Spring阶段性学习:基础、配置解析、回调
    谈谈Spring对于@Configuration的Cglib代理
    IDEA使用Docker插件部署jar
    实用的IDEA插件
    Alibaba Cloud Toolkit插件部署jar
    谈谈Spring的ImportSelector和ImportBeanDefinitionRegistrar
    谈谈Spring的ConfigurationClassPostProcessor
    Mariadb使用总结
    分布式开放消息系统(RocketMQ)的原理与实践
    redis学习笔记
  • 原文地址:https://www.cnblogs.com/lidan/p/2239511.html
Copyright © 2020-2023  润新知