开发者社区> 问答> 正文

C++ 访问未定义内置类型没报错!! ?报错

非常简单的一段代码:
int main(){

int id;
cout <<"id : "<< id << endl;

return 0;

}

输出是 id:0 ,我的天!
访问函数内的未定义内置类型不是应该会报错吗!这会跟编译器有关系吗?!求大牛解答一下!

展开
收起
爱吃鱼的程序员 2020-06-23 15:51:15 575 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    嗯,是你这种情况,应该编译器是有关系的,我试了下,vc6是没问题的,但在vs2013下就报错,提示:errorC4700:使用了未初始化的局部变量“id”

    编译器会对内置类型做一个初始化。所以有一个数值

    很正常,没赋值时默认是0

    你已经定了int类型的id了,就不会报错啊,id定义时都有了初始值,一般初始值是0xcccccccc,你这里的初始值是0

    2020-06-23 15:51:34
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
使用C++11开发PHP7扩展 立即下载
GPON Class C++ SFP O;T Transce 立即下载
GPON Class C++ SFP OLT Transce 立即下载