C++ c++;字符串比较运算符>;根据两个字符串的比较方式生成不同的输出
下面的代码产生不同的结果:C++ c++;字符串比较运算符>;根据两个字符串的比较方式生成不同的输出,c++,C++,下面的代码产生不同的结果: 初始化字符串变量并将其赋值以进行比较 字符串d=“d”; 字符串abc=“abc” d>abc的计算结果为真 比较字符串。 “d”>“abc”的计算结果为false 它们如何产生不同的输出?“d”不是std::string。它是一个常量字符*。同样地,当您执行string d=“d”时,您将字符串设置为{'d','\0'}的常量字符*。然后,当您比较它时,使用std::string操作符>而不是const char*“d”实际上是一个const char[2],不过如
“d”
不是std::string
。它是一个常量字符*
。同样地,当您执行string d=“d”
时,您将字符串设置为{'d','\0'}
的常量字符*
。然后,当您比较它时,使用std::string操作符>
而不是const char*
“d”
实际上是一个const char[2]
,不过如果用作
的操作数,它会在当时转换为const char*
。