さて、ここに私が問題を抱えている私のコードの部分があります:
char * historyArray;
historyArray = new char [20];
//get input
cin.getline(readBuffer, 512);
cout << readBuffer <<endl;
//save to history
for(int i = 20; i > 0; i--){
strcpy(historyArray[i], historyArray[i-1]); //ERROR HERE//
}
strcpy(historyArray[0], readBuffer); //and here but it's the same error//
私が受け取っているエラーは次のとおりです。
"invalid conversion from 'char' to 'char*'
initializing argument 1 of 'char* strcpy(char*, const char*)'
このプロジェクトは、割り込みをキャッチして処理し、基本的なUNIXコマンドを実行する疑似OSシェルを作成することです。私が抱えている問題は、過去20個のコマンドを、スタックに動的に割り当てられた文字配列に格納する必要があることです。(また、割り当て解除)
2D文字配列を使用する場合、上記のコードは正常に機能します。
char historyArray[20][];
しかし、問題はそれが動的ではないということです...
そして、はい、strcpyが文字列のコピーに使用されることになっていることを私は知っています。
どんな助けでも大歓迎です!