c语言 数组的初始化

指针数组的初始化语法:

我们在这定义一个  int类型的  指针数组  name

int   *name[] = {1,2,3,4};

name数组的初始化通过一个数字列表实现, 

列表中的每个数字赋值给数组name中相应位置的元素,

第n个数字存贮在存储器中的某个位置,

指向他的指针存储在name[n]中。

但是我们需要注意的事,由于上述声明中没有指名数组name的长度,因此,

编译器编译时将对数组的初始值的个数进行统计,并将这一个准确的数字填入数组的长度中。

下面让我们来编写一个函数

函数名:month_name

函数的作用是:返回第n个月的名字

/* month_name 返回第n个月的名字 */
char *month_name(n)
{
       static char *name[] = {
		"Illegal month",
		"January",
		"February",
		"March",
		"April",
		"May",
		"June",
		"july",
		"August",
		"September".
		"October",
		"November",
		"December"
	}
	return (n < 1 || n > 12 ) ? name[0] :name[n];

}




上面这个函数当 n为1 - 12 之间的数的时候  函数返回   指针数组name中 指定的值

当n为1-12之外的值得时候  函数返回name[0]  即为Illegal month

posted @ 2012-05-22 23:16  andy-liu-  阅读(509)  评论(0编辑  收藏  举报