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

作者在 2012-10-29 09:50:19 发布以下内容
1.指向函数的指针变量一般定义形式为
      数据类型 (*指针变量名)(参数列表)
函数的调用可以通过函数名调用,也可以通过函数指针调用,例如,int max(int, int)与int (*p)(int, int); p = max是等价的。指针变量p是专门用来存放函数的入口地址的。p=max(a,b);这种写法是错误的。用函数指针变量调用函数时,只需将(*p)代替函数名即可。
2.返回指针值的函数,一般定义形式为
     类型名 *函数名(参数列表)
#include <stdio.h>

float *search(float (*pointer)[4], int n);

int main(){
    float score[][4] = {{60,70,80,90}, {56,89,67,88}, {34,78,90,66}};
    float *p;
    int i, m;

    printf("enter the number of student:");
    scanf("%d", &m);
    printf("the scores of No. %d are:n", m);
    p = search(score, m);
    for(i=0; i<4; i++){
        printf("%5.2ft", *(p+i));
    }
    printf("n");
    return 0;
}

float *search(float (*pointer)[4], int n){
    float *pt;

    pt = *(pointer+n);
    return pt;
}
 
基础知识 | 阅读 989 次
文章评论,共0条
游客请输入验证码
浏览19232次
文章归档