gpt4 book ai didi

c++ - 为什么第一行出现了除零以外的其他值?

转载 作者:行者123 更新时间:2023-11-30 04:43:27 24 4
gpt4 key购买 nike

我正在尝试使用 C++ 中的数组制作一个 MxN 零矩阵。但是有些值不会归零。请帮我解决这个问题。

#include <iostream>
using namespace std;
int main()
{
int m,n;
cin>>m>>n;
int i,j,s[m][n]={0};
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
cout<<s[i][j]<<" ";
}
cout<<endl;
}
}

输入: 4 4

输出:

0 11097 1757549776 11097 
0 0 0 0
0 0 0 0
0 0 0 0

预期输出:

0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0

最佳答案

此代码在标准 C++ 中无效,因为它不允许在没有像这样的 new 的情况下创建动态数组。

例如,这里是 VC++ 输出:https://rextester.com/VFVL26633

ource_file.cpp(9): note: failure was caused by non-constant arguments or reference to a non-constant symbol
source_file.cpp(9): note: see usage of 'm'
source_file.cpp(14): warning C4552: '<<': operator has no effect; expected operator with side-effect
source_file.cpp(18): error C2036: 'int [m][n]': unknown size

如果您将 nm 设置为常量,它将正常工作。

使用std::vectornew/delete

关于c++ - 为什么第一行出现了除零以外的其他值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58282273/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com