我有一个整数数组列表,我想制作左右指针数组列表来访问它。但是对于超过 690.000 个元素(例如 700.000),程序会停止并显示“分段错误(核心转储)。我以前使用过 std::vector 但由于速度原因我必须使用简单的数组列表。这段代码与我的程序无关,它是一种非常简单的方式来告诉我的代码问题。而且我必须使用全局变量,因为此代码在类方法中运行。
int k=698900;
int n1=k/2;
int n2=k/2;
int *left[n1];
int *right[n2];
int list[k];
for(int i=0; i<k; i++){
list[i] = i;
}
for(int i=0; i<n1; i++){
left[i] = &list[i];
}
for(int i=0; i<n2; i++){
right[i] = &list[i];
}
for(int i=0; i<n2; i++){
cout << *right[i] << endl;
}