在C语言如何在定义数组时给数组赋值?
1个回答
展开全部
要理解C语言中数组的运作机制,我们首先必须理解如何声明一个数组,例如:
int a[3];
这个语句声明了a是一个拥有了3个整型元素的数组,类似的:
struct{
int p[4];
double x;
}b[17];
声明了b是一个拥有17个元素的数组,其中每个元素都是一个结构,该结构中包括了一个拥有4个整形元素的数组(命名为p)和一个双精度类型的变量(命名为x)。
现在考虑下面的例子:
int calendar[12][31];
这个语句声明了calendar是一个数组,该数组拥有12个数组类型的元素,其中每个元素都是拥有31个整型元素的数组(而不是一个拥有31个数组类型的元素的数组,其中每个元素又是一个拥有12个整型数组元素的数组)因此sizeof(calendar)的值是372(31*12)与sizeof(int)的乘积。
如果calendar不是用于sizeof的操作数,而是用于其他的场合,那么calendar总是被替换成一个指向calendar数组的起始元素的指针。要理解上面这句话的含义,我们首先必须理解有关指针的一些细节。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询