回覆列表
  • 1 # dpohi13840

    這個就是C語言的命令列引數和main函式之間的引數轉換關係的詳細解釋了。1、首先明確一下我們編譯出來的可執行程式 windows編譯出來的可執行程式副檔名為exe,比如test.ext,樓主例子中的echo.exe,執行程式的時候exe可以省略。 我們要執行一個程式,第一個肯定是要寫上程式的名字,比如echo.exe或者echo,然後後面跟引數,比如樓主程式裡面的hellow, world,就是2個引數,以空格分開,第一個引數是hellow,,第二個引數是world2、然後再看一下程式是如果將我們寫的引數傳遞給可執行程式的。 main函式的引數是兩個int argc,char *argv[],argc就是引數的個數,argv陣列就是具體的引數了。 程式執行時,會根據我們輸入的個數來決定給main函式傳遞什麼東西。按照空格分開,每一個輸入就是一個引數(注意:也要包含程式本身的名字,也是一個引數) 即當我們輸入echo hellow, world的時候,main函式接收到3個引數,echo,hellow,和world,這個時候argc就等於3,argv[0]是echo,argv[1]是hellow,,argv[2]world。3、估計樓主疑惑的就是可執行程式的名字為什麼也是一個引數,這個是C語言的規範,記住就行了哈。

  • 中秋節和大豐收的關聯?
  • 沈浪到底喜歡朱七七還是白飛飛?