strcmp 或 string::compare?
我想比较两个字符串.strcmp
可以吗?(我试过了,它似乎不起作用).string::compare
是解决方案吗?
I want to compare two strings. Is it possible with strcmp
? (I tried and it does not seem to work). Is string::compare
a solution?
除此之外,有没有办法将 string
与 char
进行比较?
Other than this, is there a way to compare a string
to a char
?
感谢您的早期评论.我用 C++ 编码,是的,就像你们中的一些人提到的那样,它是 std::string
.我没有发布代码,因为我想学习一般知识并且它是一个很长的代码,所以它与问题无关.
Thanks for the early comments. I was coding in C++ and yes it was std::string
like some of you mentioned.
I didn't post the code because I wanted to learn the general knowledge and it is a pretty long code, so it was irrelevant for the question.
我想我了解了 C++ 和 C 之间的区别,感谢您指出这一点.我现在将尝试使用重载运算符.顺便说一下 string::compare
也可以.
I think I learned the difference between C++ and C, thanks for pointing that out. And I will try to use overloaded operators now. And by the way string::compare
worked too.
推荐答案
对于 C++,使用 std::string
并使用 string::compare
进行比较.
For C++, use std::string
and compare using string::compare
.
对于 C 使用 strcmp
.如果您的(我的意思是您的程序)字符串(出于某种奇怪的原因)没有 nul
终止,请使用 strncmp
代替.
For C use strcmp
. If your (i meant your programs) strings (for some weird reason) aren't nul
terminated, use strncmp
instead.
但是为什么有人不会为 std::string
使用像 ==
这样简单的东西?
But why would someone not use something as simple as ==
for std::string
?
相关文章