参数解析错误

Vic*_*tor -3 c++ console command-line-arguments

我试图用我的代码解析我的控制台应用程序中的运行参数:

int _tmain(int argc, _TCHAR* argv[])
{
    if(argv[1] == _T("arg1")) cout<<"Argument1 was passed";
    _getch();
    return 0;

}
Run Code Online (Sandbox Code Playgroud)

我的代码不起作用.我的意思是,它运行,但控制台是空的.我正在使用Use Unicode Character SetVisual Studio 2012中的选项进行编译(在Windows 7上).我的错在哪里?!

sim*_*onc 8

使用strcmp比较char数组

if(strcmp(argv[1], "arg1") == 0)
Run Code Online (Sandbox Code Playgroud)

使用==只是比较两个不同字符串的指针.

请参阅Darius Kucinskas的比较_TCHAR数组的答案


Dar*_*kas 5

if (_tcscmp(argv[1], _T("arg1")) == 0) {
    cout << "Argument1 was passed" << endl;
}
Run Code Online (Sandbox Code Playgroud)