C语言基础(二) 互动版

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

指针型函数


  在C语言中允许一个函数的返回值是一个指针(即地址),这种返回指针值的函数称为指针型函数。定义指针型函数的一般形式为:

类型说明符 *函数名(形参表){ /*函数体*/ }

  其中函数名之前加了“*”号表明这是一个指针型函数,即返回值是一个指针。类型说明符表示了返回的指针值所指向的数据类型。如:

int *ap(int x,int y){
    /*函数体*/
}

  表示ap是一个返回指针值的指针型函数,它返回的指针指向一个整型变量。

  【例】本程序是通过指针函数,输入一个1~7之间的整数,输出对应的星期名。

main(){
    int i;
    char *day_name(int n); 
    printf("input Day No:\n");
    scanf("%d",&i);
    if(i<0) exit(1);
    printf("Day No:%2d-->%s\n",i,day_name(i));
}
char *day_name(int n){
    static char *name[]={ "Illegal day",
        "Monday",
        "Tuesday",
        "Wednesday",
        "Thursday",
        "Friday",
        "Saturday",
        "Sunday"
    };
    return((n<1||n>7) ? name[0] : name[n]);
}