数组及常见问题

1、不完全初始化:

int arr[10] = {1,2,3,4} 剩下的元素默认初始化为0。

2、char arr[5] = {"a”,“98”}

这个是可行的,98默认为ASCLL码值。

3、数组地址中是连续存放的。

4、int arr[3][4] = {{1,2,3},{4,5}}

二维数组的创建是前一个行,第二个为列。也可当为一维数组来创建。

5、一般情况下,数组名都只是第一个元素的地址。但是有两种情况下数组名取全部元素的地址:第一种为操作符sizeof,在计算空间的时候,取全部元素的地址。第二种为取地址符 &arr 后面是整个数组。

6、数组的类型就是数组去掉数组名。

7.对于字符数组后面是否要加‘\0’,有以下几种情况:

第一种: char str[10] = {'h','e','l','l','o'};

如果大括号中的字符个数小于字符数组的长度,则把大括号中的字符赋给数组中前面的元素,其余元素自动赋值为空字符(即‘\0’)。

第二种:char str[5] = {'h','e','l','l','o'};

对于大括号中的字符个数和数组长度相同,系统不会自动添加'\0'。对于这种赋值方式,需要手动添加‘\0’;

即:char str[6] = {'h','e','l','l','o', '\0'};

第三种:char str[] = "hello";

系统会自动在后面添加‘\0’;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值