我正在制作自己的命令提示符(学校项目),并且试图跟踪用户使用的最后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;'的意义何在? –