您的位置 首页 java

C语言中数组初始化的几种情况

我们在使用普通变量时,需要对普通变量进行赋值操作,在数组使用时同样需要初始化,不同的初始化方式会有不同的运行结果,如果初始化的项数和数组个数不同会有什么结果?以下面代码为例作为演示,编译器使用小熊猫C++,版本0.14.0。

 # include <stdio.h>
# define  SIZE 4
int main( void ){
int arr[SIZE];
int i;
for(i=0;i<SIZE;i++){
 printf ("%2d%14d\n",i,arr[i]);
}
return 0;
}  

一、 不初始化

如果不对数组进行初始化,数组中元素的值和普通变量类似,存储的是垃圾值。

int arr[SIZE];不进行初始化,运行时将各元素赋值为垃圾值

二、 部分初始化

部分初始化,剩余的元素会被初始化为0。

int arr[SIZE] = {100};将第1个元素初始化为100,剩余的元素自动初始化为0。

三、 初始化项数多于数组元素个数

初始化项数多于数组元素个数,编译器会给出警告有多余的初始化数组元素

int arr[SIZE] = {100,200,300,400,500};编译器给出警告:[警告] excess elements in array initializer。

在运行时,多余的数组元素不能被加入数组。

文章来源:智云一二三科技

文章标题:C语言中数组初始化的几种情况

文章地址:https://www.zhihuclub.com/192403.shtml

关于作者: 智云科技

热门文章

网站地图