如果我想将一个字符串与另一个字符串进行比较,那么为什么我应该或不应该使用它有什么特别的原因
word1 ==word2;
Run Code Online (Sandbox Code Playgroud)
与
strcmp(word1,word2);
Run Code Online (Sandbox Code Playgroud)
?
编辑1:我在我的问题中犯了一个错误,忘记使用'=='代替'='
word1 =word2;
Run Code Online (Sandbox Code Playgroud)
你不应该使用它,因为它是一个赋值,而不是一个比较.比较两个std::strings是否相等的惯用方法是
bool eq = word1 == word2;
Run Code Online (Sandbox Code Playgroud)
如果您想知道其中一个字符串是否小于另一个字符串,请使用以下std::string::compare方法:
int cmp = word1.compare(word2); // beware: 0 means equality
Run Code Online (Sandbox Code Playgroud)