数组是一组数据类型相同的变量,可以存放一组数据。
1、创建数组
声明数组的语法:
数据类型 数组名[数组长度];
注意:数组长度必须是整数,可以是常量,也可以是变量和表达式。
C90规定必须用常量表达式指明数组的大小,C99允许使用整型非常量表达式。经测试,在VS中可以用用整型非常量表达式,不能用变量;但是,Linux中还可以用变量。
#include <iostream>
using namespace std;
int main()
{
int n = 20;
int arr1[10]; //定义一个数组,长度为 10
int arr2[n]; //定义一个数组,长度为 n
return 0;
}
2、数组的使用
可以通过下标访问数组中元素,数组下标从0开始。
数组中每个元素的特征和使用方法与单个变量完全相同。
语法:
数组名[数组下标]
注意:
(1)数组下标也必须是整数,可以是常量,也可以是变量。
(2)合法的数组下标取值是:0~(数组长度-1)。
3、数组占用内存的情况
数组在内存中占用的空间是连续的。
用sizeof(数组名)可以得到整个数组占用内存空间的大小(只适用于C++基本数据类型)。
#include <iostream>
using namespace std;
int main()
{
int n = 20;
int arr1[10]; //定义一个数组,长度为 10
int arr2[n]; //定义一个数组,长度为 n
cout<< sizeof(arr1) <<endl; //输出 40,因为一个 int 占 4字节,10 个 int 一个占 40字节
return 0;
}
4、数组的初始化
声明的时候初始化:
数据类型 数组名[数组长度] = { 值1,值2,值3, ...... , 值n};
数据类型 数组名[ ] = { 值1,值2,值3, ...... , 值n};
数据类型 数组名[数组长度] = { 0 }; // 把全部的元素初始化为0。
数据类型 数组名[数组长度] = { }; // 把全部的元素初始化为0。
注意:如果{}内不足数组长度个数据,剩余数据用0补全,但是,不建议这么用,你可能在数组中漏了某个值。如果想把数组中全部的元素初始化为0,可以在{}内只填一个0或什么也不填。
C++11标准可以不写等于号。
5、清空数组
用memset()函数可以把数组中全部的元素清零。(只适用于C++基本数据类型)
函数原型:
void *memset(void *s, int c, size_t n);
注意,在Linux下,使用memcpy()函数需要包含头文件#include <string.h>
6、复制数组
用memcpy()函数可以把数组中全部的元素复制到另一个相同大小的数组。(只适用于C++基本数据类型)
函数原型:
void *memcpy(void *dest, const void *src, size_t n);
注意,在Linux下,使用memcpy()函数需要包含头文件#include <string.h>
标签:24,一维,int,void,数据类型,C++,数组名,数组,长度 From: https://blog.csdn.net/m0_69452758/article/details/137168999