2024年4月15日发(作者:)
C语言中数组的总结
目录
1.
数组的定义
2.
一维数组的创建和初始化
3.
给数组元素赋值
4.
数组下标越界
5.
二维数组
6.
多维数组
7.
指针与一维数组
8.
指针与多维数组
9.
指针,数组与函数
10.
变长数组
11.
以上全部内容
数组的定义
1. 数组:一系列相同数据类型的有序序列。
2. 声明数组:
int states[50];
char code[28];
float candy[13]; 等等……
通过声明将会告知编译器三个信息:1) 数组内含有多少元素 2) 元素的数据类型 3) 数
组名
一维数组的创建和初始化
1. 数组的初始化:在数组创建时,我们要为数组初始化。
int months[12]={31,28,31,30,31,30,31,31,30,31,30,31};
//数组的初始化
int months[ ]={ 31,28,31,30,31,30,31,31,30};
//初始化时省略方括号中的数字,
编译器会根据初始化列表中项数来确定数组的大小。(本例中数组的大小为9)
const int months[12]={31,28,31,30,31,30,31,31,30,31,30,31};
//将数组设
置为只读,这样程序只能从数组中检索值,不能把新值写入数组。(一旦声明为const,便
不能再给他赋值)
以花括号括起来,用逗号分隔数组元素来初始化数组,逗号和值之间可以使用空格。
C const 与 C++ const
区别一:c++允许在声明数组时使用const整数变量,而c不允许。
区别二:const定义的变量未初始化时,c会使用一个变量地址上的随机的值,c++会
报错未初始化的const 'y'。
区别三:const int y;
const int *p2 =&y;
int * p1;
p1 = p2;//c++不允许这么做(从'const int*'到'int*' [- fper]的无效转换)
,
c
会给出一个警告(赋值从指针目标类型中丢弃“const”限定符)
1) 失败的初始化数组
a) 未初始化数组:数组元素和未初始化的普通变量一样,编译器使用
的值是内存地址上现有的值,使得数组储存的都是垃圾值。


发布评论