使用 flag 包獲取命令列引數,控制程式執行
主要函式:
flag.string()
flag.strin**ar()
flag.int()
flag.intvar()
flag.float64()
flag.float64var()
flag.bool()
flag.boolvar()
...
p2, p3):
p1:命令列引數標誌,flag 包根據該引數解析命令列引數;
p2:預設值。如果程式執行時沒有指定該命令列引數,那麼命令列引數為該值;
p3:引數說明。通常用於說明該引數作用;
返回值:指標型別。將命令列引數資訊儲存於記憶體中,返回指向該記憶體的指標。比如:flag.string()
將對應的引數儲存在記憶體中,返回值為*string
指標。
flag.***var(p1, p2, p3, p4):
p1:指標型別,其指向的記憶體用於儲存命令列引數值,比如:flag.strin**ar(&s...)
會將對應命令列引數值儲存在變數s
中;
p2:命令列引數標誌,flag 包根據該引數解析命令列引數;
p3:預設值。如果程式執行時沒有指定該命令列引數,那麼命令列引數為該值;
p4:引數說明。通常用於說明該引數作用;
返回值:無。
flag.parse():
解析傳入的命令列引數。
命令列引數指定方式:
-flag=x
-flag x
package main
import (
"fmt"
"flag")
func main()
無命令列引數:(均使用預設值)
./test
-a int
age (default 30)
-m male or female (default true)
-n string
name (default "sdc")
-s float
salary (default 1000)
sdc 30 1000 true
指定部分命令列引數:(未指定的引數使用其預設值)
./test -n "lucy" -a 27 -m=f
-a int
age (default 30)
-m male or female (default true)
-n string
name (default "sdc")
-s float
salary (default 1000)
lucy 27 1000 false
指定所有命令列引數:(所有引數使用指定值)
./test -n "lucy" -a 27 -m=f -s 2000
-a int
age (default 30)
-m male or female (default true)
-n string
name (default "sdc")
-s float
salary (default 1000)
lucy 27 2000 false
向可執行程式傳入命令列引數時,需要在引數標誌前加-
。比如對於flag.string("n", "sdc", "name")
,如果向可執行程式傳入該引數,那麼應輸入:./test -n "lucy"
。
指定bool
型別的引數時,需要使用-flag=x
的方式,不能使用-flag x
的方式。x
支援的值:1, 0, t, f, t, f, true, false, true, false, true, false
。
命令列引數
c 程式設計師參考 main方法可以使用引數,在這種情況下它採用下列形式之一 static int main string args static void main string args main方法的引數是表示命令行引數的string陣列。通常通過測試length屬性來檢查引數是否存在,例如 ...
命令列引數
c程式中的mian具有兩個形參。int main int argc,char argv argc 命令列引數的數目 argv 指向一組引數值的第乙個元素 每個元素都是指向乙個引數文字的指標 指標陣列 每個元素都是乙個字元指標,陣列末尾是乙個null指標,argc的值和這個null都用於確定實際傳遞了...
命令列引數
命令列引數,也是一種形式的引數。它與我們常見的函式的引數的不同點在於,他是傳遞命令列的引數。c 中可以指定任意數量的命令列引數存放在args陣列中。args陣列的第乙個元素是執行該程式的.exe檔名。向其中新增命令列引數的方法 開啟專案屬性頁面 解決方案資源管理器中,所在專案的properties選...