数组未初始化有两种情况:
1,未初始化,其值有两种可能:一种是全局数组,被编译器初始化为0。一种是局部数组,为随机数。
2, 已初始化,局部数组和全局数组,已初始化,未赋值的数组都会被赋值为0。
扩展资料:
数组:是有序的元素序列。 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。
用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。 这些无序排列的同类数据元素的集合称为数组。
声明固定大小的数组:
有三种方法声明固定大小的数组,用哪一种方法取决于数组应有的有效范围:
1,建立公用数组,在模块的声明段用 Public语句声明数组。
2,建立模块级数组,在模块的声明段用 Private语句声明数组。
3,建立局部数组,在过程中用 Private语句声明数组。
参考资料来源:百度百科-数组
1、未初始化,同时数组中的某些元素未被赋值时,其值有两种可能,一种是全局数组,被编译器初始化为0,一种是局部数组,为随机数。在vc6.0的debug版程序中一般是0xcc的值。这个值实际上是int 3断点机器码。
2、已初始化,不管是局部数组还是全局数组,编译器都会将其未被赋值的元素初始化为0。
#include <stdio.h>
int a[2]; //此时编译器将a[0] a[1]初始化为0
int main()
{
a[0] = 1; //a[1]的值为0
int b[2];
b[0]= 1; //b[1]未被赋值,其值为随机值。
int c[2] = {1}; //初始化,c[1] = 0
printf("a[0]=%d\ta[1]=%d\n", a[0], a[1]);
printf("b[0]=%d\tb[1]=%x\n", b[0], b[1]);
printf("c[0]=%d\tc[1]=%d\n", c[0], c[1]);
return 0;
}
2013-07-19
2013-07-19
2013-07-19