关于C++不赋值直接输出的问题

2025-05-20 00:59:56
推荐回答(4个)
回答1:

那是凑巧而已,你虽然没有初始化c, 但保存c的那块内存里正好是2,所以就输出了2,不同的时间,不同的环境可能有不同的值。这类操作都是无意义的,结果也是不确定的

回答2:


#include
using namespace std;
int main()
{   
    int a=3,b=4,c;
    cout<    system("pause");
    return 0;
}

就这个代码,在VS2010下运行得到的结果是344302994,所以说不必纠结了,结果就是不确定的,只是偶然内存中就存储了这个值而已

回答3:

只定义赋值,到底输出什么是不确定的。

因为C和C++的变量定义是只分配内存,不作初始化的,而basic语言会把整型变量开始自动写成0。

也就是那个地方到底输出了什么,其实是看本来里面到底存储的是什么。

回答4:

你看的什么书,用的什么编译器,我这里输出和你不一样,不是2