指针型函数

#include<stdio.h>
main()
{
      static char *name[]={"illegal day","Monday","Thuesday","Wednesday",
     "Thursday","Friday","Saturday","Sunday"};
      int i;
      char *ps;
      char *day_name(char *name[],int n);
//指针型函数的声明,所谓指针型函数是:函数返回是值是一个指针(即地址)。
      printf("input day no:/n");
      scanf("%d",&i);
      if(i<0) exit(1);
      //day_name(name,i);
      ps=day_name(name,i);
/*声明了指针的变量,并将指针型的函数直接赋给该变量,因为指针型函数返回的是指针
(地址),所以可直接赋值,如果申明的不是指针变量,那么需要加“&”符号表示取地址
进行赋值。输出返回值的结果,只要指针变量即可,*/
      printf("day no:%2d-->%s/n",i,ps);
      getch();
      return 0;
}
char *day_name(char *name[],int n)
{
     static char *p1,*p2;
     p1=*name;
     p2=*(name+n);
     return((n<1||n>7)?p1:p2);
    
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章