在C++中,静态数组的初始化可以通过以下几种方式进行:
int arr[5] = {1, 2, 3, 4, 5};
这将创建一个包含5个元素的静态整数数组,并用指定的值进行初始化。
{}
初始化:int arr[] = {1, 2, 3, 4, 5};
这将创建一个大小为5的静态整数数组,并用指定的值进行初始化。注意,这里我们没有指定数组的大小,编译器会根据初始化列表自动计算数组大小。
int arr[5] = {1, 2, 3};
这将创建一个包含5个元素的静态整数数组,前三个元素将被初始化为1、2和3,剩余两个元素将被默认初始化为0。
// 全局变量
int global_arr[5] = {1, 2, 3, 4, 5};
// 静态变量
static int static_arr[5] = {1, 2, 3, 4, 5};
对于全局或静态变量,如果不提供初始化列表,那么它们将被默认初始化为0。
请注意,静态数组的大小必须是常量表达式,因此不能使用变量来定义数组大小。例如,以下代码是错误的:
int size = 5;
int arr[size]; // 错误!数组大小必须是常量表达式