运行 上的 C++ (DevC++) 分段错误
C++ (DevC++) Segmentation Fault on Run
出于某种原因,当我尝试 运行 这个程序时,它停止工作了。我能理解 Stack Overflow 之类的东西,但说真的,我怎么能 运行 这段代码呢?有什么办法吗?
#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);
出于某种原因,当我尝试 运行 这个程序时,它停止工作了。我能理解 Stack Overflow 之类的东西,但说真的,我怎么能 运行 这段代码呢?有什么办法吗?
#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);