问题
I wanted to compare a string without actually defining one of them as a string, something like this,
if (string == 'add')
Do I have to declare 'add'
as a string or is it possible to compare in a similar way?
回答1:
In C++ the std::string class implements the comparison operators, so you can perform the comparison using ==
just as you would expect:
if (string == "add") { ... }
When used properly, operator overloading is an excellent C++ feature.
回答2:
You need to use strcmp
.
if (strcmp(string,"add") == 0){
print("success!");
}
回答3:
You could use 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;
}
来源:https://stackoverflow.com/questions/6222583/how-to-compare-strings