сравнить char * со строковым макросом - PullRequest
1 голос
/ 15 сентября 2010

У меня есть следующий код:

#define INPUT_FILE "-i"

int main(int argc, char* argv[]) {
     ....
}

Есть ли способ в C++ сравнить строки в argv[] и INPUT_FILE?Я пытался

strcmp(argv[1],INPUT_FILE)

Он компилируется, но каждый раз возвращает false.

Спасибо!

Ответы [ 2 ]

4 голосов
/ 15 сентября 2010

strcmp возвращает 0, если есть совпадение.

1 голос
/ 15 сентября 2010

Вы пробовали печатать argv[1]? Просто чтобы убедиться, что вы сравниваете правильные вещи ...

Но вы также хотите проверить семантику strcmp: он не проверяет, совпадают ли две строки, он проверяет, какая из них больше другой. 0 означает "ни то, ни другое".

...