c++中定义一个变量一定要赋初值吗
#include<iostream.h>voidmain(){inta=2,b=3,c;b^=a;cout<<b<<endl;}上例中定义一个为复出值的变量C编译时---...
#include<iostream.h>
void main()
{
int a=2,b=3,c;
b^=a;
cout<<b<<endl;
}
上例中定义一个为复出值的变量C编译时
-------------------Configuration: zb1 - Win32 Debug--------------------
Compiling...
001.cpp
E:\Visual C++\zb1\001.cpp(4) : warning C4101: 'c' : unreferenced local variable
Linking...
zb1.exe - 0 error(s), 0 warning(s) 展开
void main()
{
int a=2,b=3,c;
b^=a;
cout<<b<<endl;
}
上例中定义一个为复出值的变量C编译时
-------------------Configuration: zb1 - Win32 Debug--------------------
Compiling...
001.cpp
E:\Visual C++\zb1\001.cpp(4) : warning C4101: 'c' : unreferenced local variable
Linking...
zb1.exe - 0 error(s), 0 warning(s) 展开
4个回答
展开全部
在编程中,尤其是c语言或C++中,定义一个变量,在使用前一定要初始化,
如果不初始化在遍以上是没错误的,但是使用中有可能会随机赋值,造成
严重的后果。
你上例的问题不是没有初始化,而是说你定义了一个变量
但是从来没有使用过,是编译器的提示(警告),并不是错误,编译还是会通过的。
想C#等高级语言的有些数据类型,编译器会自动初始化。
例如bool 类型,C#会初始化为false,但是C++或c中如果不初始化,那么这个值很可能是随机的。
如果不初始化在遍以上是没错误的,但是使用中有可能会随机赋值,造成
严重的后果。
你上例的问题不是没有初始化,而是说你定义了一个变量
但是从来没有使用过,是编译器的提示(警告),并不是错误,编译还是会通过的。
想C#等高级语言的有些数据类型,编译器会自动初始化。
例如bool 类型,C#会初始化为false,但是C++或c中如果不初始化,那么这个值很可能是随机的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不一定要赋初值
这里警告的原因是因为定义了变量c而没有使用(c不具有具体的数值,仅仅是白白占用一个空间而已)对程序运行部造成其他影响。
这里警告的原因是因为定义了变量c而没有使用(c不具有具体的数值,仅仅是白白占用一个空间而已)对程序运行部造成其他影响。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
warning是警告,大部分呢时候不影响运行。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询