函数与指针

发布时间:2020-06-18 14:36:28 作者:hat小坤
来源:网络 阅读:319

1.C语言中函数有自己特定的类型

2.函数的类型由返回值参数类型参数个数共同决定

3.C语言中通过typedef为函数类型重命名

4.函数指针用于指向一个函数

5.函数名是执行函数体的入口地址

6.可通过函数类型定义函数指针:Func Type* pointer

7.也可以直接定义:type (*pointer)(parameter list) pointer为函数指针变量名,type为指向函数的返回值类型,paramter list为指向函数的参数类型列表

#include <stdio.h>

typedef int(FUNC)(int);

int test(int i)
{
    return i * i;
}

void f()
{
    printf("Call f()...\n");
}

int main()
{
    FUNC* pt = test;//函数指针赋值
    
    void(*pf)() = &f;
    
    pf();
    (*pf)();
    
    printf("Function pointer call: %d\n", pt(2));
}

函数和数组指针的定义区别为:数组指针用&取出地址,而函数用&和不用都表示函数的地址。

回调函数

1.回调函数是利用函数指针实现的一种调用机制

2.回调机制原理:调用者不知道具体事件发生的时候需要调用的具体函数,被调函数不知道何时被调用,只知道被调用后需要完成的任务,当具体事件发生时,调用者通过函数指针调用具体函数

3.回调机制的将调用者和被调函数分开,两者互不依赖。


指针阅读技巧解析

1.从最里层的圆括号中未定义的标识符看起

2.首先往右看,再往左看

3.当遇到圆括号或者方括号时可以确定部分类型,并调转方向

4.重复2.3步骤,直到阅读结束、

推荐阅读:
  1. 指针数组,数组指针、指针函数,函数指针
  2. 结构体中函数指针与typedef关键用途(*函数指针)

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

编程

上一篇:elasticsearch 集群部署

下一篇:java实现UDP通信

相关阅读

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

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