我正在製作自己的命令提示符(學校項目),並且試圖跟蹤用戶使用的最後10條命令。所以我有一個數組:如何將char數組傳遞給函數C
char* history[10];
從我的理解這意味着我有一個指針數組,指向字符串。我的問題是,我有另一個變量,輸入這是用戶輸入。但是每當用戶輸入新的東西時,輸入的值就會發生變化,這意味着我的數組中的所有字符串都會更改爲用戶的新輸入。
我想知道如何解決這個問題?
我試圖改變我的數組爲以下內容:
char *history[10][MAX] //Where MAX = 256
在那裏我可以代替使用的strcpy代替,但我無法弄清楚如何輸入數組的數組的方法,然後用strcpy的來將該字符串複製到數組數組中。
這裏是我當前的方法:
char* updateHistory(char *history[], char command[], int histIndex) {
history[histIndex] = command;
return *history;
}
上的另一個解決方案任何幫助或如何讓我的解決方案的工作?
是MAX表示單個命令中的最大字符數? – Pooya
返回'return * history;'的意義何在? –