变量周围的堆栈'sortArray'已损坏
Stack around the variable 'sortArray' was corrupted
运行时检查失败 #2 - 变量 'sortArray' 周围的堆栈已损坏。
我在最后一行得到这个,该程序旨在创建一个随机数列表,然后对它们进行排序(WIP(。我认为可能是数组大小小于测试中的行数.txt所以我将其从 100 增加到 101 无济于事。
//#include <cstdlib>
#include <iostream>
#include <fstream>
#include <ctime>
#include <string>
using namespace std;
int main()
{
//srand(time(NULL));
std::ofstream outfile("C:\Users\smasher248\Desktop\test.txt");
int randomNumber;
for (int x = 0; x < 100; x++)
{
randomNumber = rand() % 9000 + 1000;
outfile << randomNumber <<"n";
}
outfile.close();
std::ifstream infile("C:\Users\smasher248\Desktop\test.txt");
std::string lineHolder;
int lineCounter = 0;
int sortArray[101];
while (std::getline(infile, lineHolder))
{
sortArray[lineCounter] = stoi(lineHolder);
cout << sortArray[lineCounter] << "n";
lineCounter++;
}
infile.close();
int swapContainer;
for (int i = 0; i < 101; i++)
{
if (sortArray[i] > sortArray[i+1])
{
swapContainer = sortArray[i];
sortArray[i] = sortArray[i + 1];
sortArray[i + 1] = swapContainer;
}
std::ofstream sortedFile("C:\Users\smasher248\Desktop\test_sorted.txt");
sortedFile << sortArray[i] << "n";
}
}
你只需要对代码进行一些更改。
- 在代码开头包含
<algorithm>
- 在
ofstream(...)
中,添加要追加到文件中的..., std::ios::app)
。 - 若要对数组进行排序,请删除
ofstream
语法上方的整个条件表达式块,并在循环外部添加std::sort(sortArray, sortArray + 100)
。 - 将值
101
更改为该 For 循环中的100
。
大功告成。
相关文章:
- 具有奇怪重复模板模式的派生类中的成员变量已损坏
- 为什么C中的通用链表中存储的数据已损坏
- gdb错误:Backtrace已停止:上一帧与此帧相同(堆栈已损坏?)
- 变量周围的堆栈'...'已损坏
- 运行时检查失败 #2 变量"A"周围的堆栈已损坏
- 两个垫子的 OpenCV 数据是相同的,但使用 Mat::at 检索时的值已损坏
- 运行时检查失败 #2 - 变量"e"周围的堆栈已损坏。发生
- 变量周围的堆栈'sortArray'已损坏
- 变量周围的堆栈'folderPath'已损坏
- 在为 iOS 构建 aws-sdk-cpp 时,cmake 上的 CXX 编译器错误已损坏
- 运行时检查失败 #2 - 变量周围的堆栈'...'已损坏
- AES-128 CFB-8解密的前16个字节已损坏
- 运行时检查失败 #2 - 变量"l1"周围的堆栈已损坏
- C++:此代码可以编译,但引发运行时检查失败 #2 - 围绕变量周围的堆栈'num'已损坏。发生
- 图像在本地主机上显示已损坏
- 检查工作正常的 CXX 编译器:/cygdrive/c/cygwin64/bin/clang++ -- 已损坏
- 数组变量周围的堆栈已损坏
- 运行时检查失败 - 变量周围的堆栈已损坏
- 串行端口的传入值有时已损坏或丢失
- 自定义异常中的消息已损坏