2014-09-28 90 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个字节的整数)

“一”是一个字符串

替换“一”与“一”