這是作業,你可以告訴。這將在C中實現。製作我自己的外殼
首先,我創建了一些打印殼牌 e.x的函數。
printf("%[email protected]:~/%s ", getlogin(), get_working_directory());
之後,我繼續用'|'標記輸入行,作爲一個分隔符,所以我得到將在後面管道的命令。
char* instr;
instr = strtok(line, "|");
while (instr != NULL) {
insert_arguments_list(instr); //This is a singly-linked list that holds the arguments.
instr = strtok(NULL, "|");
}
所以,現在,我要創建一個char * const的數組這是我做的事情之一不知道該怎麼辦,因爲所有的變量都必須事先聲明,因爲它是常量,不??
你能提供一些關於如何從現在開始的提示嗎?
你需要什麼數組?什麼是問題? –
不,你不需要將變量聲明爲const,所有exec()系列都會自行強制轉換const。只需專注於在分隔符之間使用需要的命令集來獲取char ** [],然後將char * []傳遞給execvp()。在一個循環中。 – 2015-10-14 12:16:20