c语言,当数组某些元素未被赋值时其值为多少?

这样编译可以通过吗?如果可以未被赋值的元素的值为多少?... 这样编译可以通过吗?如果可以未被赋值的元素的值为多少? 展开
 我来答
百度网友ca560fe
2019-10-14 · TA获得超过2.3万个赞
知道答主
回答量:70
采纳率:100%
帮助的人:3万
展开全部

数组未初始化有两种情况:

1,未初始化,其值有两种可能:一种是全局数组,被编译器初始化为0。一种是局部数组,为随机数

2, 已初始化,局部数组和全局数组,已初始化,未赋值的数组都会被赋值为0。

扩展资料:

数组:是有序的元素序列。 若将有限个类型相同的变量的集合命名,那么这个名称为数组名。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。

用于区分数组的各个元素的数字编号称为下标。数组是在程序设计中,为了处理方便, 把具有相同类型的若干元素按无序的形式组织起来的一种形式。  这些无序排列的同类数据元素的集合称为数组。

声明固定大小的数组:

有三种方法声明固定大小的数组,用哪一种方法取决于数组应有的有效范围:

1,建立公用数组,在模块的声明段用 Public语句声明数组。

2,建立模块级数组,在模块的声明段用 Private语句声明数组。

3,建立局部数组,在过程中用 Private语句声明数组。

参考资料来源:百度百科-数组



吉祥二进制
高粉答主

推荐于2017-09-07 · 科技改变生活,生活改变科技。
吉祥二进制
采纳数:33926 获赞数:84579

向TA提问 私信TA
展开全部

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
展开全部
全局变量是0局部变量是随机值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式