C++ 得到-858993460作为结果c++;

C++ 得到-858993460作为结果c++;,c++,C++,程序在a[ch]和b[nech]上向我发送-858993460值为什么??我不能理解。。。如果我使用cout,m[i]=a[ch]是未定义的行为,因为a是未初始化的int数组 你从来没有读过a。您希望该行为是什么?m[i]=a[ch]是未定义的行为,因为a是未初始化的int数组 你从来没有读过a。您希望该行为是什么?您需要初始化阵列 int m[3] = {0} int a[3] = {0}; int b[3] = {0}; 在不初始化数组的情况下,该值是堆栈中的随机值。您需要初始化数组 in

程序在a[ch]和b[nech]上向我发送-858993460值为什么??我不能理解。。。如果我使用
cout,
m[i]=a[ch]
是未定义的行为,因为
a
是未初始化的
int
数组


你从来没有读过
a
。您希望该行为是什么?

m[i]=a[ch]
是未定义的行为,因为
a
是未初始化的
int
数组


你从来没有读过
a
。您希望该行为是什么?

您需要初始化阵列

int m[3] = {0}
int a[3] = {0};
int b[3] = {0};

在不初始化数组的情况下,该值是堆栈中的随机值。

您需要初始化数组

int m[3] = {0}
int a[3] = {0};
int b[3] = {0};


在不初始化数组的情况下,该值是堆栈中的随机值。

您没有在任何地方初始化
a
b
的元素,因此它们具有几乎随机的初始值(例如,您得到的-858993460)。

您没有在任何地方初始化
a
b
的元素,因此,它们的初始值几乎是随机的(例如,得到的是-858993460)。

此外,
m[i]=a[ch];ch++;我们可以把它统一起来。。。当我尝试在a[ch]b[nech]中设置为={0}时,结果为0…此外,使用
m[i]=a[ch];ch++;我们可以把它统一起来。。。当我尝试在a[ch]b[nech]中设置为={0}时,结果是0…不,它不起作用。。现在,结果只显示了0。首先,您得到了
cin>>m[i]的值但是m[i]通过
m[i]=a[ch]再次重置;ch++确定检查编辑的代码。。。它在第一个阶段工作得很好,但是当我在下一个阶段尝试使用它们时,结果是一样的…你能用我的代码给我键入完整的程序吗。。。我得到的结果是0。。。我下一次检查不行不行。。现在,结果只显示了0。首先,您得到了
cin>>m[i]的值但是m[i]通过
m[i]=a[ch]再次重置;ch++确定检查编辑的代码。。。它在第一个阶段工作得很好,但是当我在下一个阶段尝试使用它们时,结果是一样的…你能用我的代码给我键入完整的程序吗。。。我得到的结果是0。。。不能做我的下一步检查如果你描述了你想要达到的目标,那会有所帮助。
a[]
b[]
应该做什么?该值不是随机值,是十六进制的0xCCCC,在Visual Studio中,它是调试模式下未初始化的int。-858993460=0xCCCC,这意味着如果您描述了您试图实现的目标,它会有所帮助。
a[]
b[]
应该做什么?该值不是随机值,是十六进制的0xCCCC,在Visual Studio中是调试模式下未初始化的int。-858993460=0xCCCC,这意味着