char *getmonth(int n) { int a; char t[13][99]=("0","January","February","March","April","May","June","July","August","September","October","November","December"); char (*p)[13]=t; p=p+1; for(a=1;a<=n;a++) p++; if(n>0&&n<13) return p; else return NULL; }
时间: 2023-06-14 22:07:48 浏览: 71
一个显示某段时间内每个月的方法 返回由这些月份组成的数组
这段代码是一个函数,输入一个整数n,返回一个字符串指针,该指针指向对应的月份字符串。其中,使用一个二维字符数组t来存储月份字符串,p是一个指向字符数组的指针,指向t的第二行(即"January")。然后根据输入的n,将指针p往后移动n个位置,最后返回指针p指向的字符串。
需要注意的是,数组t的初始化方式有误,应该使用双引号而非括号来包含字符串。同时,函数中的字符数组t是在函数栈上定义的,因此在函数返回后,指向该数组的指针将失效,不能再使用。
阅读全文