运行时出现C++ (DevC++) 分段错误

C++ (DevC++) Segmentation Fault on Run

本文关键字:分段 错误 DevC++ C++ 运行时      更新时间:2023-10-16

由于某种原因,当我尝试运行这个程序时,它停止工作。我可以理解有类似堆栈溢出的东西,但说真的,我该如何运行这段代码?有什么可能的办法吗?

#include <iostream>
#include <ctime>
#include <cstdlib>
#include <conio.h>
using namespace std;
#define N 30000
int getUniqueNumber(int *szTable,int szCounter);
bool checkDuplicate(int *szTable,int szCounter,int szDupl);

class Sort {
private:
public:
int szTable[N];
/*Sort() {
int i;
for (i=0;i<N;i++) {
this->szTable[i]=getUniqueNumber(this->szTable,i);
}
}*/
//  int bubbleSort();
//  void quickSort();
//  int straightSelSort();
//  int straightInsSort();

};

int main(int argc, char** argv) {
Sort Tables[20];
return 0;
}
Sort Tables[20];

很可能超过您的可用堆栈大小,N = 30000.

您可以尝试从堆中分配适当的向量:

std::vector<Sort> Tables(20);