Как сравнить строки - PullRequest
       3

Как сравнить строки

24 голосов
/ 03 июня 2011

Я хотел сравнить строку без фактического определения одной из них как строки, что-то вроде этого,

if (string == 'add')

Нужно ли объявлять 'add' в виде строки или можно сравнить аналогичным образом?

Ответы [ 3 ]

61 голосов
/ 03 июня 2011

В C ++ класс std :: string реализует операторы сравнения , поэтому вы можете выполнить сравнение, используя ==, как и следовало ожидать:

if (string == "add") { ... }

При правильном использовании перегрузка оператора является отличной функцией C ++.

8 голосов
/ 03 июня 2011

Вам нужно использовать strcmp.

if (strcmp(string,"add") == 0){
    print("success!");
}
0 голосов
/ 03 июня 2011

Вы можете использовать strcmp():

/* strcmp example */
#include <stdio.h>
#include <string.h>

int main ()
{
  char szKey[] = "apple";
  char szInput[80];
  do {
     printf ("Guess my favourite fruit? ");
     gets (szInput);
  } while (strcmp (szKey,szInput) != 0);
  puts ("Correct answer!");
  return 0;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...