實現乙個minishell小程式

2021-10-19 08:14:51 字數 1166 閱讀 7018

從標準輸入當中讀取資料(要執行的可執行程式)

拆分可執行程式名稱和命令列引數,我們認為從標準輸入當中讀取到的內容第乙個空格之前的資料是可執行程式的名稱,第乙個空格之後的內容都認為是命令列引數

建立子程序,子程序程式替換可執行程式

在子程序程式替換時間內,讓父程序進行等待程序等待

isspace()函式,判斷乙個字元是否有空白字元(空格、換頁符、換行符、回車、水平指標符、垂直製表符)

isapace()函式返回值,返回0為沒有讀到了空白字元,返回非0讀到了空白字元

#include

#include

#include

//儲存字元的ascii碼值

#include

#include

#include

char g_command[

1024];

//從標準輸入當中獲取命令

intgetcommand()

return0;

}int

execcommand

(char

* ar**)

pid_t pid=

fork()

;if(pid<0)

else

if(pid==0)

else

return0;

}int

dealcommand

(char

* command)

//拆分命令

int argc=0;

char

* ar**[

1024]=

;while

(*command)

*command=

'\0';}

command++

;}

ar**[argc]

=null

;for

(int i=

0;i)//建立子程序,子程序程序程式替換

execcommand

(ar**)

;return0;

}int

main()

//拆分字串,建立子程序進行程序程式替換

dealcommand

(g_command);}

return0;

}

乙個簡單的實現購買商品功能的Java小程式

public class purchase 以下是程式執行結果 以上是我自己編寫的 總結幾點 1.書寫 時,一定注意格式規範,如果不太注意,可以用一些編輯器如editplus來進行編寫,它能幫你規範。2.關於本次程式,大家從上面 可以看到有多條輸出語句,沒有多大難度,實際上也是,但應注意輸入語句的寫...

c 實現乙個小演算法

題目 有n個格仔,每個格仔裡有坦克,坦克有兩滴血,你向格仔裡投擲炸彈,每次命中坦克他掉一滴血並隨機像左或者右移動乙個格仔,問最少炸幾次能把全部坦克炸完。題解 先向偶數格仔投擲炸彈,所有的坦克全跑到奇數格仔裡,然後再向奇數格仔裡投擲炸彈,消滅掉之前偶數格仔裡的坦克並且所有的坦克全跑到偶數格仔裡,再向偶...

實現乙個有趣的小效果

一 新建乙個project。二 新增兩個textview,並設定它的屬性。android id id tv one android layout width wrap content android layout height wrap content android text 瘋狂源自夢想,技術成...