標籤:介紹 null logs 方式 comm 分割 color 命令 version
兩中方法:
第一種:
1 int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE /*hPrevInstance*/, LPTSTR lpstrCmdLine, int nCmdShow){ 2 int argc = 0; 3 LPWSTR *argv= NULL; 4 //分割命令列參數 5 USES_CONVERSION; 6 LPCWSTR temp= A2W(lpstrCmdLine); 7 argv= CommandLineToArgvW(temp, &argc); 8 //到此處已經擷取到了兩個參數 argc argv,與控制台程式不同的是:argc的個數為真實的參數個數 ,並不包括 .\test.exe 本身。argv也一樣,argv[0]為第一個參數,並不是.\test.exe 9 //此方法有一個缺陷,在命令參數有空格時,會解析失敗,造成參數不完整。10 }
第二種:
1 #include <misc/cmdline.h> 2 int WINAPI _tWinMain(HINSTANCE hInstance, HINSTANCE /*hPrevInstance*/, LPTSTR lpstrCmdLine, int nCmdShow){ 3 CmdLine cmdline; 4 cmdline.Analyze(lpstrCmdLine); 5 6 if (cmdline.HasParam("test")){ 7 printf("%s",cmdline["test"]); 8 } 9 } 10 //這種方法在命令列參數輸入時為 KEY:VALUE形式,在程式中可以用KEY擷取VALUE,該類還有SetParam等方法,具體請參考源碼。11 使用方式為 .\test.exe -KEY:VALUE
至此兩種方法介紹完畢,有建議的小夥伴可以給我留言評論。
如需轉載,請標明出處:http://www.cnblogs.com/guozht/7680893.html
windows WTL使用命令列參數