私はC++を初めて使用し、ユーザーが配列にdoubleを入力し続けることを許可しようとしています。ユーザーが-1を入力すると、プログラムは停止します。私が持っているコードは機能しますが、12個のアイテムが配列に追加されると、次のエラーが発生します。
***glibcが検出されました***./exercise2:ダブルフリーまたは破損(出力):0x00000000010aa070 ***
=======バックトレース:=========
と:
中止(コアダンプ)
これが私のコードです:
int main(){
int size=5;
int i=0;
double *numbers = new double[size];
cout<<"Enter your double:"<<endl;
while(1){
double *numbers2=new double[size];
cin>>numbers[i];
if(i>=size-1){
size=size*2;
memcpy(&numbers2, &numbers, size);
delete[]numbers;
numbers=numbers2;
}
if(numbers[i]==-1){
break;
}
cout<<numbers[i];
i++;
}
}