2021-07-18数组

1、一维数组
注意点:
1)数组类型由数组内的元素决定。数组的大小也又数组内的元素决定。一个字节有八位。
bool size is 1
short int size is 2
int size is 4
long int size is 4
long long size is 8
float size is 4
double size is 8
long double size is 8
2)数组定义必须有类型名,数组名,数组数量;而且数组的元素个数可以去是常量,也可以是变量,但在vs2019里面不支持数组数量是变量,没有元素个数也可以,但是必须要有初始化;

int a [5];
int a[];//会报错,因为没有元素个数;
int n =5;
int a [n];//会报错,因为n为变量
const int n =5;
int a[n];//正确
int [] ={1,2,3};//这样也可以

3)在vs2019中由于不遵循C99标准,因此类似于这种的定义数组是会报错的

int n =0;
scanf_s("%d",&n);
int a [n]={};//这样是会报错的
/*可以进行以下操作*/
const int n = 5;
int a[5]={};

4)定义空数组

int a[]={};//这样是不不可以的,没有意义
int b[6]={};//这样是可以的

5)用const修饰数组代表数组里的每一个元素都不能再进行改变,但是不能这样定义,必须进行初始化·

const int n;//这样定义是不行的,相当于定义了一个随机的常变量,与常变量的定义不相符
const int m[5];//这样也是不可以的,相当于定义了5个不能改变的随机数组元素
const int m[];//同理这样也是不可以的
const int n =5;
const int m[5]={};//这样可以

6)定义一个有n个指针变量的数组

int *p [5];

7)\0和字符串同时出现

char a []={'a'}sizeof(a);//1
char a[]={"1,2"};
sizeof(a);//3,有一个\0隐藏,标志结束

8)数组名
数组名除了在sizeof()中的意义不一样之外,其他地方都表示的是数组的首地址。a[1]代表*(a+1)。
另外在输出数组时

for(int i =0;i<n;i++)
{
printf("%d",a[i]);//也可用*(a+i),a[i]代表*(a+i),同理i[a]代表*(i+a)都是一样的。这就是数组下表从零开始的原因
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值