2014-09-28 86 views
0

我怎麼能在C++中使用命令行參數檢查的條件,例如我喜歡這個在C++命令行參數時

int main(int argc, char* argv[]) { 

    if (strcmp(argv[1] , 'a')==0) 
    { 
     cout<<"something"<<endl; 
    } 
} 

的論據你好,喜等代碼,條件檢查我的argv [1] ==「你好」,我想執行一些語句。 這個比較是拋出一個錯誤char與const char * 不兼容是否有更好的方法來比較這些參數?

+0

首先,你應該寫「一「,而不是'a'。你顯然是一個初學者,我建議你找一個關於指針的教程。 其次,有一個名爲getopt的庫用於這種用途。 – yakoudbz 2014-09-28 16:29:55

+0

'strcmp(argv [1],「a」)' - 注意雙引號,它將字符串標識爲指向數組{a','\ 0'}的指針而不是單個字符'a'。 strcmp是用於字符串,而不是字符 – 2014-09-28 16:47:33

回答

3

「一」是一個int(更準確的1個字節的整數)

「一」是一個字符串

替換「一」與「一」