首页 > 代码库 > C语言 一维数组
C语言 一维数组
一维数组
1.一维数组的定义
* 定义的形式为:类型 数组名[元素个数]
int a[5];
* []只能放在数组名的后面,下面的都是错误写法:
int[5] a; // 错误int[] b; // 错误
* []里面的个数必须是一个固定值,可以是常量(比如6、8)、常量表达式(比如3+4、5*7)。绝对不能使用变量或者变量表达式来表示元素个数,大多数情况下不要省略元素个数(当数组作为函数的形参和数组初始化时除外)
下面的都是正确写法:
int a[5]; // 整型常量int b[‘A‘]; // 字符常量,其实就是65int c[3*4]; // 整型常量表达式
下面的都是错误写法:
int a[]; // 没有指定元素个数,错误int i = 9;int a[i]; // 用变量做元素个数,错误
2.一维数组的初始化
2.1在定义时初始化
int arr[3] = {1,,2,3};
2.2先定义后赋值
int arr[3];arr[0] = 1;arr[1] = 2;arr[2] = 3;
2.3错误做法
int arr[3];arr = {1,2,3};
//因为arr为地址,是一个常量,常量是不可以再赋值的,比如 10=8;这是错的
3.一维数组的存储
定义数组时,系统将按照数组类型和个数分配一段连续的存储空间来存储数组元素。要注意的是,数组名代表着整个数组的地址,也就是数组的起始地址。
例如 char arr[3] = {‘A‘,‘B‘,‘C‘};
内存中分配 如下
地址 数组 存储内容
0x1101 arr[0] A
0x1102 arr[1] B
0x1103 arr[2] C
即 arr的内存地址为arr 或者为 &arr[0] = 0x1101
C语言 一维数组
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。