c+x语言问题 #include<iostream.h> int a; a=8; int main(){cout<<a} 这里为什么报错指

c+x语言问题#include<iostream.h>inta;a=8;intmain(){cout<<a}这里为什么报错指着a=8?... c+x语言问题
#include<iostream.h>
int a;
a=8;
int main(){cout<<a}

这里为什么报错指着a=8?
展开
 我来答
天雨下凡
2016-07-30 · 知道合伙人教育行家
天雨下凡
知道合伙人教育行家
采纳数:17564 获赞数:65172
爱电脑、爱数学、爱音乐; 熟悉VB、C/C++、JAVA; EXCEL与VBA有所研究…… 数学,一些会,一些被忘却……

向TA提问 私信TA
展开全部
a是全局变量,一定要在定义的同时初始化
#include<iostream.h>
int a=8;
int main(){cout<<a}
追问
嗯,请问全局变量也不能赋值吗?我在int a=8;下面加了个a=8又报错了。
追答

全局变量如果定义的同时不进行初始化,那么系统会给一个默认值(局部变量不会,局部变量不赋值会得到的一个随机的垃圾值),int型变量会得到0,所以在你的代码中,如果你用int a;那么等价于int a=0;关于你说的先定义后赋值出错的问题,因为C++中的函数外不能有赋值语句,你的int a;a=8;在所有函数之外,所以不允许,但是初始化可以(初始化并不是简单的赋值)。另外你的C++代码编写风格不严谨,建议用iostream,而不是iostream.h,另外要使用命名空间(using namespace std;)参考如下代码:

#include<iostream>
using namespace std;
int a=8;
int main(){cout<<a;}
a1012144015
2016-07-30 · TA获得超过6416个赞
知道大有可为答主
回答量:9038
采纳率:40%
帮助的人:1408万
展开全部
#include<iostream.h>
int a=8;
int main(){cout<<a}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式