strcmp或string :: compare?

Per*_*x19 10 c c++ string char string-comparison

我想比较两个字符串.有可能strcmp吗?(我试过,似乎没有用).是string::compare解决方案吗?

除此之外,有没有办法比较string一个char


感谢您的早期评论.我用C++编写代码,是的,std::string就像你们中的一些人提到的那样.我没有发布代码,因为我想学习一般知识,这是一个很长的代码,所以它与问题无关.

我想我已经了解了C++和C之间的区别,感谢你指出这一点.我现在将尝试使用重载运算符.顺便说一句string::compare.

Sad*_*que 26

对于C++,使用std::string和比较使用string::compare.

供C使用strcmp.如果您(我的意思是您的程序)字符串(出于某些奇怪的原因)未nul终止,请strncmp改用.

但是,为什么会有人使用尽可能简单的东西==std::string

  • 因为`compare`有3路输出`<0`,`0`,`> 0`,而`==`有二进制`true` /`false`输出.有时,您需要根据字符串比较少或更多来采取不同的操作.3路输出可让您在不比较字符串两次的情况下完成此操作. (2认同)

Mar*_*k B 12

假设你的意思是std::string,为什么不使用重载运算符:str1 == str2,str1 < str2