сравнить char* с++

Запутался немного. Как сравнить параметр вызова программы char* ?

 int main(int argc, char* argv[])
 {
  string key ="77";
  if (argv[1]==key) cout << "верно" << endl;
 }

Ответы (2 шт):

Автор решения: SelfishCrawler

Класс string содержит метод compare, возвращающий 0 если строки равны:

int main(int argc, char* argv[])
{
    string key ="77";
    if (!key.compare(argv[1]))
        cout << "верно" << endl;
}
→ Ссылка
Автор решения: Harry

Да именно так, как вы и сравниваете. Класс string обеспечивает сравнение с использованием оператора ==.

Второй вариант - если бы вы сравнивали непосредственно литерал "77" - с использованием функции сравнения С-строк strcmp:

int main(int argc, char* argv[])
{
  if (strcmp(argv[1],"77")==0) cout << "верно" << endl;
}

P.S. Только убедитесь, что argc > 1, а то argv[1] будет нулевым указателем - как-то некрасиво окажется обращаться туда, куда нельзя :)

→ Ссылка