关于数组
目录:程序员成长之旅/C语言/笔记
注意!:在调用函数的情况下 传递变量是传的数值 改变其值 并不会改变自身
但是!!传递数组的时候 传递的是地址(指针) 若发生改变 是直接会改变自身
🖼 图片占位(归档模式)图片见原始导出:
%E5%85%B3%E4%BA%8E%E6%95%B0%E7%BB%84.assets/16e265b3893a262283cc30d0803ceee0.png🖼 图片占位(归档模式)图片见原始导出:
%E5%85%B3%E4%BA%8E%E6%95%B0%E7%BB%84.assets/37dba48b-7efe-4cb6-88a3-28bb0800dacf.jpg声明:
声明方法
1、 数据类型 数组名称[长度n] = {元素1,元素2…元素n};
2、 数据类型 数组名称[] = {元素1,元素2…元素n};
3、 数据类型 数组名称[长度n]; 数组名称[0] = 元素1; 数组名称[1] = 元素2; 数组名称[n-1] = 元素n;
数组的下标均以0开始;
数组在初始化的时候,数组内元素的个数不能大于声明的数组长度;
如果采用第一种初始化方式,元素个数小于数组的长度时,多余的数组元素初始化为0;
在声明数组后没有进行初始化的时候,静态(static)和外部(extern)类型的数组元素初始化元素为0,自动(auto)类型的数组的元素初始化值不确定。
C语言并不提供计算数组长度的方法
下标越界:
🖼 图片占位(归档模式)图片见原始导出:
%E5%85%B3%E4%BA%8E%E6%95%B0%E7%BB%84.assets/0.19220532152214886.png由于C语言是没有检查数组长度改变或者数组越界的这个机制,可能会在编辑器中编译并通过,但是结果就不能肯定了,因此还是不要越界或者改变数组的长度