一、概念
/*
1.定义的同时初始化
2. 先定义再初始化
3.完全初始化
4.不完全初始化
5.省略元素个数的写法
6.错误写法
注意点 : 每个一维数组的元素个数 不能省略
*/
二、代码
#include <stdio.h>
int main()
{
#pragma 1.二维数组的多种初始化方式
// 1.定义的同时初始化
int names[2][3] =
{
{'l','y','h'},
{'l','y','s'}
};
// 2. 先定义再初始化
int names2[2][3];
names2[0][0] = 'l';
names2[0][1] = 'y';
names2[0][2] = 'h';
// 3.完全初始化
int names3[2][3] =
{
{'l','y','h'},
{'l','y','s'}
};
// 4.不完全初始化
int names4[2][3] =
{
{'l','y'},
};
// 5.省略元素个数的写法
// 明确的告诉二维数组, 我们有2个一维数组
int names5[2][3] =
{
'l','y','h',
'l','y','s'
};
// 没有告诉二维数组 我们有几个一维数组
// 如果在 '定义的同时'进行初始化,那么一维数组的个数可以省略
// 系统会自动跟你每一个 一维数组能够存放多少个元素,自动根据 初始化的值 推断出二维数组中 一共有多少个元素(多少个一维数组)
int names6[][3] =
{
'l','y','h',
'l','y','s','n','b'
};
// 6.错误写法
// 注意点 : 每个一维数组的元素个数 不能省略
/*
int names7[2][] =
{
{'l','y','h'},
{'l','y','s'}
};
*/
// 搞不清楚 应该分配多大的存储空间,以及搞不清楚 应该把哪些数据 赋值给第一个数组,以及哪些数据赋值 给第二个数组
/*
int names7[2][] =
{
'l','y','h',
'l','y','s'
};
*/
return 0;
}