我寫了下面的代碼,它不起作用,但是當我改變它時,第二個代碼段將會起作用。C++比較c字符串的問題
int main(int argc, char *argv[])
{
if(argv[ 1 ] == "-i") //This is what does not work
//Do Something
}
但是,如果我寫這樣的代碼,這將工作。
int main(int argc, char *argv[])
{
string opti = "-i";
if(argv[ 1 ] == opti) //This is what does work
//Do Something
}
是因爲字符串類==作爲一個重載成員,因此可以執行此操作嗎?
在此先感謝。
有使用STRCMP任何問題嗎?我只是想知道這樣做的好處... – rplusg 2010-01-04 06:29:35
它看起來像你試圖閱讀命令行選項。如果您在Linux機器上,請查看getopt()函數http://linux.die.net/man/3/getopt – 2010-01-04 07:40:32