помощь в аргументах - PullRequest
       6

помощь в аргументах

1 голос
/ 09 августа 2010

Я создал окно win32, оно работает нормально, но я пытаюсь получить аргумент команды, используя lpcmdline.он работает нормально, но когда я пытаюсь сравнить его со строкой, с которой он работает, вот код сравнения

TCHAR checking[]=_T("hello"); 
if(args==checking) // args equals lpcmdline like this LPTSTR args=lpcmdline
{
    TCHAR greeting[]=_T("heys");
}
else
{
    MessageBox(NULL,args,L"1",MB_OK);
    /*if args doesn't equal checking tha cout what is inside args*/
    MessageBox(NULL,checking,L"2",MB_OK);
    //cout checking
}

хорошо, когда я cout, оба varabiles одинаковы, как вывод args привет, а проверка вывода приветно я не знаю, почему они не равняются, пожалуйста, помогите заранее спасибо

Ответы [ 2 ]

3 голосов
/ 09 августа 2010

Это неправильный способ сравнения двух строк в C ++.

Учитывая, что вы сравниваете массив TCHAR с LPTSTR, вызовите _tcscmp вместоиспользуя оператор ==.

2 голосов
/ 09 августа 2010

if(args==checking) сравнивает указатели args и checking.Так как они указывают на разные места, условие не выполняется.Вам нужно сравнение строк, для этого вам нужно использовать функцию типа _tcscmp.

...