[問題] 有關主程式中argument的問題

看板C_and_CPP (C/C++)作者時間16年前 (2009/06/04 01:10), 編輯推噓2(203)
留言5則, 5人參與, 最新討論串1/1
Dear all, 我想問一個主程式中argument的問題。 常常看到一些學術文章作者自己develop一個code(只有release .exe檔)。 假設他的exe程式叫作test.exe,在test.exe中需要輸入argument有兩種, a方法(其中包含子方法1~10),加上b方法(其中包含子方法1~5)。我雖瞭 解C中int main(int argc, char *argv[])如何使用,但原作的argument 卻是長得如下形式: test --a a_1 //選擇a方法,用a之1的子方法。沒有指明b法時,b用default。 或 test --b b_2 //選擇b方法,用b之2的子方法。沒有指明a法時,a用default。 或 test --a a_1 --b b_2 //同使選擇a,b法,並指定其子方法。 請問這些input argument也是以int main(int argc, char *argv[])寫成, 再加上自己寫一個判斷argv[1]是何者方法的子程式嗎?還是有方便函式 可使用? 這些類似的程式在linux/dos指令中也很常見。因為身邊沒有很熟C的朋 友,故上版po問題。是否可以可以找到簡易的教學(任何書、中英語網站皆可)? 或請提供關鍵字,我再自行搜尋。 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.128.46

06/04 01:13, , 1F
getopt?
06/04 01:13, 1F

06/04 01:28, , 2F
謝謝,我再查查!
06/04 01:28, 2F

06/04 01:46, , 3F
getopt以及long版本
06/04 01:46, 3F

06/04 03:02, , 4F
自己寫也並不難。
06/04 03:02, 4F

06/04 03:57, , 5F
應該可以用OR 達成 當沒有輸入就讓第二順位的遞補..
06/04 03:57, 5F
文章代碼(AID): #1A9gwIG2 (C_and_CPP)
文章代碼(AID): #1A9gwIG2 (C_and_CPP)