I 나 함수를 호출 INT의 동적 배열을 생성하고, 알고리즘C++ 동적 배열 초기화 충돌
MAIN.CPP
...
int main(void){
srand((long) 1234567);
callFunction1();
return 0;
}
와 그 배열을 작성 다음 코드가 functions.h
...
int *A;
int N;
//prototype
void callFunction2();
void callFunction1(){
int choice;
cin >> choice;
while (choice != 2){
callFunction2();
cin >> choice;
}
}
void callFunction2(){
cout << "Enter array size" << endl;
cin >> N;
A = new int[N];
A[0] = 0;
A[1] = 1;
for (int i=2;i<=N;i++){
A[i] = A[i-1] + A[i-2];
}
}
그래서 위의 코드는 시간이 있지만, 일부 대부분의 시간을 작동합니다 배열을 초기화하는 줄에서 충돌합니다.
A = new int [N];
이 문제의 원인은 무엇입니까?
"배열"에 한계가 있습니다. – chris
N보다 작거나 같은 숫자를 입력하거나 배열을 할당하는 것이 사용 가능한 메모리 (메모리 조각화 가능성이 있음)보다 많은 메모리를 소비하는 N 값을 입력하십시오. – elgonzo