指针函数和函数指针

迷南。 2022-08-24 04:20 360阅读 0赞

指针函数和函数指针的区别在于:

函数指针是指针指向函数地址,指针函数是返回值类型为指针。

下面看下函数指针的例子:

  1. #include<stdio.h>
  2. int add(int, int);
  3. int main(){
  4. int (*pf)(int,int);//定义一个函数指针
  5. int x=1,y=2;
  6. pf = add;//指针指向函数地址
  7. int sum = (*pf)(x,y);//使用指向的函数
  8. printf("sum=%d\n",sum);
  9. return 0;
  10. }
  11. int add(int a, int b){//函数名是一个地址
  12. return a+b;
  13. }

指针函数的例子:

下面做一个数组排序的DEMO

  1. #include<stdio.h>
  2. int *pf(int [], int);
  3. int main(){
  4. int arr[]={4,5,2,1,0};
  5. int num = sizeof(arr)/sizeof(arr[0]);
  6. int *ptr;
  7. ptr = pf(arr,num);
  8. for(int i=0; i<num; i++){
  9. printf("%d ",*(ptr+i));
  10. }
  11. return 0;
  12. }
  13. int *pf(int a[], int n){
  14. for(int i=0; i<n; i++){
  15. for(int j=0; j<n-i; j++){
  16. if(a[j]<a[j+1]){
  17. int temp = a[j];
  18. a[j] = a[j+1];
  19. a[j+1] = temp;
  20. }
  21. }
  22. }
  23. return a;
  24. }

发表评论

表情:
评论列表 (有 0 条评论,360人围观)

还没有评论,来说两句吧...

相关阅读

    相关 函数指针指针函数

    指针函数 定义 指针函数,简单的来说,就是一个返回指针的函数,其本质是一个函数,而该函数的返回值是一个指针。 声明格式为:\类型标识符 函数名(参数表) 看看下面

    相关 C++函数指针指针函数

    指针函数:一个返回指针的函数,本质是一个函数,返回的变量为指针类型。这里不做赘述。主要讲函数指针的概念与运用。 函数指针 定义 本质为一个指针变量,这个指针指向一

    相关 指针函数函数指针

    指针函数和函数指针的区别在于: 函数指针是指针指向函数地址,指针函数是返回值类型为指针。 下面看下函数指针的例子: include<stdio.h>

    相关 函数指针&指针函数

    一、 在学习arm过程中发现这“指针函数”与“函数指针”容易搞错,所以今天,我自己想一次把它搞清楚,找了一些资料,首先它们之间的定义: 1、指针函数是指带指针的函数,即本质

    相关 函数指针指针函数

      函数指针和指针函数经常是很多初学者感到疑惑的地方,其实这两个是完全不同的概念。 指针函数   指针函数就是返回值为指针类型的函数。 函数指针   指针函数的概念其实