CaCl2 Blog

某OIer的个人Blog


  • 首页

  • 关于

  • 标签

  • 归档

  • 搜索

一维数组

发表于 2019-02-03 阅读次数: 阅读次数: Valine:

基本概念

同类型变量或对象的集合称为数组。

定义

在C++语言中,一维数组定义方法如下:

1
2
int a[15];
//int为类型名,a为数组名,[15]为元素个数。

其中,元素个数必须是常数或常量表达式。

数组中的变量称为数组元素,由于数组中每个元素都有下标,因此数组元素也成为下标变量。

数组下标取值从0开始,使用数组时下标不能越界。同一数组的所有元素在内存中占用一片连续的存储单元。

引用

每个数组元素都是一个变量,数组元素可以表示为:

数组名[下标]

其中,下标可以是任何值为整型的表达式,该表达式里可以包含变量和函数调用。引用时,下标值应在数组定义的下标值范围内。

数组的初始化

在定义一个一维数组的同时,可以给数组中的元素赋初值。

数组名[常量表达式]={值1,值2}

例:

1
int a[10]={0,1,2,3,4,5,6,7,8,9};

与

1
a[0]=0;a[1]=1;a[2]=2;a[3]=3;a[4]=4;a[5]=5;a[6]=6;a[7]=7;a[8]=8;a[9]=9;

等价

数组越界

C++语言规定,使用数组时,要注意:

(1)数组元素下标为正整数。

(2)在定义元素个数的下标范围内使用。

然而,当在程序中把下标写成负数、大于数组元素的个数时,程序编译的时候是不会出错的。例如:

1
2
3
4
5
int a[10];
a[-3]=5;
a[20]=15;
a[10]=20;
int k=a[30];

这些语句的语法是正确的,能够通过编译。然而,它们要访问的数组元素并不在数组的存储空间内,这种现象叫做数组越界。

发现程序中有否数组越界没有什么好的方法,需要在编写时特别的注意,同时,程序编写完成后,加强静查。所谓“静查”,即认真阅读程序是否按照设计的要求编写。

  • 本文作者: CaCl2
  • 本文链接: https://cacl2.ml/CPP-array.html
  • 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
# 计算机编程 # C++
C++逻辑表达式
傻瓜式搭建V2ray服务器
  • 文章目录
  • 站点概览
CaCl2

CaCl2

一个兴趣使然的无名小站
16 日志
14 标签
RSS
GitHub E-Mail Twitter Instagram
Creative Commons
  1. 1. 基本概念
  2. 2. 定义
  3. 3. 引用
  4. 4. 数组的初始化
  5. 5. 数组越界
© 2018 – 2020 CaCl2
载入天数...载入时分秒...
|