【发布时间】:2021-06-09 02:22:54
【问题描述】:
我正在尝试创建一个模拟项目购买菜单。如果有人能告诉我为什么我的向量返回 -858993460 而不是我试图通过数组读入的 int 值,我将不胜感激。我试图像数组一样读取它,它说我有内存问题。我被卡住了。
这是我声明的相关变量
string exit, storeChoice;
double balance = 10000;
bool store = true;
const int inv = 10;
unsigned int i = 0;
unsigned int Choice;
int iLimit[inv], categoryChoice;
vector<int> invVec;
这是发生错误的行和 Visual Studio 上的错误弹出窗口。 cout
以下代码在我的 main() 中
if (categoryChoice == 1)
{
cin >> Choice;
Choice >> iLimit[i];
if (Choice != 0)
{
invVec.push_back(iLimit[i]);
for (i = 0; inVec.size(); i++)
{
cout << invVec.at(i) << endl;
}
Choice = 0;
}
【问题讨论】:
-
在哪一行?调试器是否提供任何见解?
-
您确定
invVec有9 个条目吗?这似乎是一个巨大的假设。我建议:for (auto&& item : invVec) { std::cout << item << std::endl; }打印。 -
欢迎来到 Stack Overflow。请查看我们的help section,特别注意minimal complete examples 上的页面。您没有给我们足够的代码来重现错误,而且您发布的大部分代码似乎与问题无关。
-
您好,我将简化代码以更好地显示错误。我正在尝试将一个向量打印到控制台,其中包含我从一个数组中读取的数据,该数组读取来自用户的输入。之后我尝试了 cout
-
最新的代码看起来非常错误。你确定你不是说 cout