结构体数组怎么初始化?
struct city_t
{
char name[20];
double population;
double housing;
double ave;
};
struct city_t cities[2] = {{"a", 1,1,1}, {"b", 1,1,1}};
在类中怎么给字符数组成员初始化?
如果你一定要在初始化列表中初始化,可以这样做,就是麻烦了些:
class A
{
private:
union {
int a[10];
int a0;
};
public:
A(int n):a0(n){}
};
数组初始化为0的方式?
具体初始化方法可以参考如下程序段:
(方法一)1int a[5] = {0}
; // 将整型数组a的每个元素都初始化为0或者也可以用如下方法进行初始化:
(方法二)1int a[5] = {0, 0, 0, 0, 0}
; // 将整型数组a的每个元素都初始化为0,初始化效果同上方法一的初始化方法是将数组元素都初始化为同一个数值;
方法二的初始化方法可以分别对数组的每个元素进行初始化,每个元素的数值可以不同。
C语言——关于二维数组的初始化问题?
二维数组可以看成特殊的一维数组,每个元素又由一个一维数组组成。今天小编给大家讲解一下有关二维数组的一些用法。
1.定义二维数组的方法和一维数组相似,如:int a[3][3];就是定义了一个3行3列的二维数组。
2.但是我么要注意,这个3行3列的二维数组是逻辑上的概念,能形象的表示出行列关系。而在内存中,各元素是连续存放的,不是二维的,是线性的,这点大家一定要清楚。
3.二维数组的初始化,可以分行给元素赋值,如步骤一的图。也可以将所有数据写在一个花括号内,按照元素在内存中的排列顺序对各元素赋初值。但是这种方法一旦数据很多,会写成一大片,容易遗漏,不方便检查。
4.可以对部分元素赋值,例如:int a[3][3]={{1},{4},{7}};
5.也可以只对某几行赋值,例如:int a[3][3]={{1,2},{4}};
6.如果对全部元素都赋初值,则定义数组时可以对第一维的长度不指定,但第二维的长度不能省去。也可以只对部分元素赋值,而省略第一维的长度,但应该分行赋值。
1、定义二维数组的方法和一维数组相似,如:
int a[3][3];
就是定义了一个3行3列的二维数组。
2、但是我么要注意,这个3行3列的二维数组是逻辑上的概念,能形象的表示出行列关系。而在内存中,各元素是连续存放的,不是二维的,是线性的,这点大家一定要清楚。
3、二维数组的初始化,可以分行给元素赋值,如步骤一的图。
也可以将所有数据写在一个花括号内,按照元素在内存中的排列顺序对各元素赋初值。但是这种方法一旦数据很多,会写成一大片,容易遗漏,不方便检查。
4、可以对部分元素赋值,例如:
int a[3][3]={{1},{4},{7}};
5、也可以只对某几行赋值,例如:
int a[3][3]={{1,2},{4}};
6、如果对全部元素都赋初值,则定义数组时可以对第一维的长度不指定,但第二维的长度不能省去。
也可以只对部分元素赋值,而省略第一维的长度,但应该分行赋值。