作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
当我为矩阵中的一个点赋值时,它为什么会为整列赋值?我试图让它只在那个时候分配。目前我正在自学计算机科学课的第二部分,所以我正在玩这个。 我的文件只是分配矩阵的大小。IT 编译并且没有运行时错误。我正在使用代码块。有更好的 IDE 吗?
我的 sample.txt 文件现在抓取两个数字 3 和 5。我试图理解,以便我可以实现文件的其余部分以将值放入矩阵中的正确点。
#include <iostream>
#include<string>
#include<fstream>
#include<iomanip>
using namespace std;
int main()
{
// variable initialition
string fileName;
int value;
int row=0,col=0; //for size of array
int a[row][col];
int row2,col2; // for putting values in array
fileName="sample.txt";
ifstream input;
input.open("sample.txt");
if (!input)
{
cout<<"ERROR: BAD FILE";
}
input>>row;
input>>col;
cout<<" ROW :"<<row<<endl;
cout<< " COL :"<<col<<endl;
for (int indexRow=0; indexRow<row; indexRow++)
{
for (int indexCol=0; indexCol<col; indexCol++)
{
a[indexRow][indexCol]=0;
}
}
a[0][1]=232;
for (int row2=0; row2<row; row2++)
{
for (int col2=0; col2<col; col2++)
{
cout<<a[row2][col2]<<" ";
}
cout<<endl;
}
input.close();
return 0;
}
最佳答案
动态数组并不像 C++ 中那样简单。您使用的语法仅用于创建固定大小的数组。在这种情况下,您需要创建具有常量、非零值的二维数组,如下所示:
int a[10][10];
此外,
input>>row;
input>>col;
...绝对不会自动调整数组的大小。
无论如何你应该避免使用原始数组,并考虑为你的二维数组使用 vector 的 vector :
std::vector<std::vector<int>> a;
有关动态数组的更多选择和讨论,请查看以下问题:
How do I best handle dynamic multi-dimensional arrays in C/C++
关于c++ - 在 C++ 中分配数据点的二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8542213/
我是一名优秀的程序员,十分优秀!