kay*_*kay 4 c++ comparison const char
在比较两个方面,这是C++中的有效代码吗? const char *
const char * t1="test1";
const char * t2="test2";
t2 = "test1";
if ( t1 == t2 ) {
cout << "t1=t2=" << t1 << endl;
}
Run Code Online (Sandbox Code Playgroud)
没用strcmp?
不,您正在比较指针值(即:地址),而不是它们的内容.该代码无效,它可能不会达到预期效果.
在C++中,你应该避免const char *并选择std::string:
#include <string>
std::string t1("test1");
std::string t2("test2");
if (t1 == t2) {
/* ... */
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
522 次 |
| 最近记录: |