C语⾔——数组定义及⽤法⽬录:
⼀:定义
C 语⾔⽀持数组数据结构,它可以存储⼀个固定⼤⼩的相同类型元素的顺序集合
数组是⽤来存储⼀系列数据,但它往往被认为是⼀系列相同类型的变量
⼆:声明数组
需要指定元素的类型和元素的数量
arraySize 必须是⼀个⼤于零的整数常量
type 可以是任意有效的 C 数据类型
type arrayName [ arraySize ];
三:初始化数组
您可以逐个初始化数组,也可以使⽤⼀个初始化语句
c语言二维数组表示方法⼤括号 { } 之间的值的数⽬不能⼤于我们在数组声明时在⽅括号 [ ] 中指定的元素数⽬
如果您省略掉了数组的⼤⼩,数组的⼤⼩则为初始化时元素的个数
只能给元素逐个赋值,不能给数组整体赋值
数组赋值的区别
char a[]="runoob"; // 这样赋值之后在结尾会⾃动加上'\0'。
char a1[]={'r','u','n','o','o','b'}; // 这样赋值是整整好好的6个空间不会⾃动加上
<span class="marked">\0</span>。
所以⽐较的话,a 的长度⽐ a1 的要⼤
四:⼆维数组
多维数组最简单的形式是⼆维数组
在本质上,是⼀个⼀维数组的列表
声明⼀个 x ⾏ y 列的⼆维整型数组
type arrayName [ x ][ y ];
⼆维数组可以被认为是⼀个带有 x ⾏和 y 列的表格
⼆维数组存放字符串,读取时当⼀维数组使⽤
⼆维数组在逻辑上是⽅阵,由⾏和列组成
但是⼆维数组在物理上是线性的,按⾏来依次进⾏存放,内存是连续的
将⼆维数组当作参数的时候,必须指明所有维数⼤⼩或者省略第⼀维的,但是不能省略第⼆维或者更⾼维的⼤⼩int x[3][4];
五:多维数组
type name[size1][size2]...[sizeN];
六:传递数组给函数
1.⽅式⼀
形式参数是⼀个指针
void myFunction(int *param)
{
.
.
.
}
2.⽅式⼆
形式参数是⼀个已定义⼤⼩的数组
void myFunction(int param[10])
{
.
.
.
}
3.⽅式三
形式参数是⼀个未定义⼤⼩的数组
void myFunction(int param[])
{
.
.
.
}
七:从函数返回数组
C 语⾔不允许返回⼀个完整的数组作为函数的参数
但是,您可以通过指定不带索引的数组名来返回⼀个指向数组的指针
如果您想要从函数返回⼀个⼀维数组,您必须声明⼀个返回指针的函数
C 不⽀持在函数外返回局部变量的地址,除⾮定义局部变量为 static 变量
int * myFunction()
{
.
.
.
}
⼋:指向数组的指针
数组名是⼀个指向数组中第⼀个元素的常量指针
double balance[50];
balance 是⼀个指向 &balance[0] 的指针
即数组 balance 的第⼀个元素的地址
因此,下⾯的程序⽚段把 p 赋值为 balance 的第⼀个元素的地址:
double *p;
double balance[10];
p = balance;
来⾃:
概念描述
C ⽀持多维数组。多维数组最简单的形式是⼆维数组。
您可以通过指定不带索引的数组名称来给函数传递⼀个指向数组的指针。
C 允许从函数返回数组。
您可以通过指定不带索引的数组名称来⽣成⼀个指向数组中第⼀个元素的指针。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论