C语言:数组辨析

 数组初始化的三种形式如下:

数据类型 数组名称[数量n] = {元素1,元素2…元素n};

数据类型 数组名称[] = {元素1,元素2…元素n};

数据类型 数组名称[数量n]; 
数组名称[0] = 元素1; 
数组名称[1] = 元素2; 
...
数组名称[n-1] = 元素n;

(借鉴于CSDN:c语言入门这一篇就够了-学习笔记(一万字))

举例说明:

int num[5]={1,2,3,4,5};

int num[]={1,2,3,4,5};

int num[5];
num[0]=1;//注意:下标是从0开始的。
num[1]=2;
num[2]=3;
num[3]=4;
num[4]=5;

 注意:定义和引用的下标是从0开始的。


数组初始化辨析1:

int num[i] ;

不行,是错误的,不能是变量。

int i=1;

int num[i++];

可以,是正确的,可以引用。

int num[3.15];

不行,是错误的,必须是整数。(元素的个数必须是整个,这样才能分配地址)

int num[5/3];

可以,是正确的,此处5/3=1,即为int num[1];


数组初始化辨析2:

int num[]={1,2,3,4,5};

可以,能确定申请多少空间。

int num[];

a[0]=1;

a[1]=2;

......

不可以,不能确定申请多少空间。


数组初始化辨析3:

a[5]={1,2,3,4,5};

printf("%d",a);=printf("%d",&a[0]);


总结:

(1)数组是具有相同类型的集合,数组的大小(即所占字节数)由元素个数乘以单个元素的大小。
(2)数组只能够整体初始化,不能被整体赋值。只能使用循环从第一个逐个遍历赋值。
(3)初始化时,数组的维度或元素个数可忽略 ,编译器会根据花括号中元素个数初始化数组元素的个数。
(4)当花括号中用于初始化值的个数不足数组元素大小时,数组剩下的元素依次用0初始化。
(5)字符型数组在计算机内部用的时对应的ascii码值进行存储的。

(借鉴于CSDN:c语言—数组详解(建议收藏))

既然没有终点,那在何处又何妨呢。


希望对你有帮助,语言学习贵在坚持输入和输出!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值