77问答网
所有问题
“C程序函数中定义的自动变量,系统不自动赋确定的初值”这句话为什么是错的?
我用VC试过,在主函数里只定义变量不赋值直接输出,可以得到0,说明系统自动赋了0啊?
举报该问题
推荐答案 推荐于2016-09-26
你自己都说了可以得到0, 那不就是说*系统不自动赋确定的初值*这是错的啦.
系统是不会为它赋初值, 是编译器赋的初值, 这点你要搞清楚. 只有少数库函数在申请空间的时候系统会为你赋初值.
以VC6来说, 它为了让程序员在测试的时候好发现错误, 第一它是在编译的时候就会对没有赋初值就引用的变量进行警告, 再一就是它会把这些变量的初值赋值为绝对值非常大的负数.
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://77.wendadaohang.com/zd/GN3N8N83qG3YqpY8pYv.html
其他回答
第1个回答 推荐于2018-05-07
和
编译器
有关系。有些编译器会赋初值,有些就不会。但是作为C语言的基本知识来讲,我们一般认为如果程序员编程的时候不给自动变量赋初值,这个变量就有可能是一个不确定的值,要有这个概念。
本回答被网友采纳
相似回答
c语言中定义变量,为什么不赋初值
啊?
答:
有几个原因可能导致在
定义变量
时
不赋初值
:1. **性能考虑:** 在一些情况下,显式初始化变量可能导致额外的开销,尤其是对于大型数据结构或在性能敏感的代码段中。如果程序员知道变量会在后续的代码中被初始化,他们可能会选择推迟初始化以提高性能。2. **逻辑设计:** 有时
,程序
员可能会选择推迟变...
为什么
“在
C语言中,函数中的自动变量
可以
赋初值,
每调用一次
,赋
一次初 ...
答:
如果是static修饰的静态
变量的话,不是
每次调用的
赋初值的
。
c程序中,
若未给
变量赋初值,
则
变量的初值自动
为0.对吗?
答:
回答:不是,会随机输出一个值。你可以做测试 main(){int a;printf("%d",a);}
main
函数中,变量
一经
定义,系统
将
自动赋
予初始值吗
???
答:
您好,很高兴能为您解决问题。如果您没有手动为变量初始化,是不会
自动赋
值的。声明变量后
系统
只是给他一个空间,这个空间里有什么事不会去改变的。除非您手动赋值。希望我的解答能帮到您,望采纳!
c++
程序,定义
了几个
变量,
如果把变量
的初值
赋值为0 ,程序就正确了,而不...
答:
这句就会出错,C对于没有
赋初值的变量,
一般是返回它的地址值,所以就与你想要的结果不同。同理求min函数也是这样的。所以你必须将row,colum都要先赋0,这样你的max=a[0][0]或者min=b[0][0]是正确时就是返回的行列也是对了的。至于第二个程序更容易理解了,就算max=str[0][0];
这句是
对...
未在
定义
语句
中赋初值的
auto变量和stati
c变量的初值
都是随机值。请问...
答:
如果定义时未对其
赋初值,
编译时
系统
对数值型stati
c变量
赋值为0,对字符型
变量赋
值空。static的三条重要作用:(1)最主要功能是隐藏。(2)因为static变量存放在静态存储区,第二个作用是保持变量内容的持久。(3)默认初始化为0。在静态数据区,内存中所有的字节默认值都是0x00。
C语言
编译程序
是自动
生成
变量的
初始值吗?
答:
不会,
C语言不
会对局部变量进行自动初始化,未设定
初值的
局部
变量,
数值为随机值。
C语言是
一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发,C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了...
大家正在搜
在一个函数内部定义的变量是
在函数内部定义的变量称为
matlab未定义函数或变量
设变量已正确定义并赋
matlab怎么定义函数
函数可以嵌套定义但不能嵌套调用
函数的形参都属于全局变量
变量与函数
定义函数
相关问题
为什么“在C语言中,函数中的自动变量可以赋初值,每调用一次,...
定义一个变量如果没赋初值, 是不是系统自动将其初值赋为0了
未在定义语句中赋初值的auto变量和static变量的初值都...
c++程序,定义了几个变量,如果把变量的初值赋值为0 ,程序...
C语言 以下叙述中错误的是?
c程序中,若未给变量赋初值,则变量的初值自动为0.对吗?
c语言中,主函数可以调用任意一个函数,但不能使用其他函数中定...
若函数中有定义语句:int k;则系统将自动给k赋初值0还是...