数组和指针----指针调用函数

Posted 过不去的过去

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组和指针----指针调用函数相关的知识,希望对你有一定的参考价值。

#include <stdio.h>
#include<stdlib.h>
int add(int a, int b){

return a + b;
}
int Max(int a, int b){
int i;
i=a > b ? a : b;
return i;
}
int main(){
//指针指向函数

//普通写法
int i = add(5,6);
printf("%d\n",i);

//指针写法
int i1;
int(*p)(int, int);//定义指向函数的指针
p = add;//直接写函数的名字,代表函数的地址;将函数add的地址复制给p;
i1 = p(5, 6);//将p进行计算;(代表add)赋值给i1;

int(*p1)(int, int);
p1 = Max;//编译器不知道调用哪一个,而是在执行中动态的去调用

int i2 = Max(14, 5);
printf("%d\n", i1);
printf("%d\n", i2);
system("pause");
}

以上是关于数组和指针----指针调用函数的主要内容,如果未能解决你的问题,请参考以下文章

C语言函数指针,敲黑白,讲重点,如何定义函数指针?

C语言基础:指针相关概念(指针的算术运算 指针数组指向指针的指针 传递指针给函数 从函数返回指针 )为啥C 语言不支持在调用函数时返回局部变量的地址?

C语言指针函数?

C#调用C++的dll中的函数,数组指针的问题

类中函数指针调用函数

C语言函数指针定义