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