您的位置:首页 > 编程语言 > C语言/C++

C语言学习笔记:指针函数和函数指针的浅析

2018-11-17 14:13 429 查看

 

#include "stdio.h"

#include "stdlib.h"

#include <string.h>

/*--------------指针函数---------------*/ 

int *f(int a,int b ){    

   int *p = (int*)malloc(sizeof(int)); //给指针分配内存 

   *p  = a + b ;                       //给指针变量赋值 

   return p ;                            //返回指针的地址 

}

int main(){          

     int *p1 ;      

     p1 = f(1,2);     // 把指针的地址取出来给指针P1 

     printf("%d",*p1);//输出指针变量值为3    

     return 0 ;

}

/*----------函数指针----------------*/

int add(int x,int y){   //函数声明 

    return x+y;

}

int sub(int x,int y){   //函数声明   

    return x-y;

}

int (*fun)(int x,int y);//函数指针定义 

int main(){    

    fun =  add; //函数指针指向函数的地址   第一种写法       

    printf("%d \n", (*fun)(1,2));  //结果为3 

    fun =  &sub;//函数指针指向函数的地址   第二种写法    

    printf("%d \n", (*fun)(3,2));  //结果为1     

    return 0;

}
 

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: