我的代码:
{
int reply;
cout<<"Am I doing something wrong: ";
cin>> reply;
if-part( reply == "yes") {
cout<<"Good";
}
}
大家好,我是新手,我用谷歌搜索了你的东西,但我找不到答案。
如果你在if条件下发短信,为什么这段代码运行不好,但如果你输入数字,一切都很好?
谢谢。
答案 0 :(得分:0)
reply
的类型为int
,您将其与string
进行比较。这是不可能的。
答案 1 :(得分:0)
您可以简单地使用:
if (reply == 1)
cout << "Good\n";
答案 2 :(得分:0)
在您的情况下,您将整数与指针(地址)进行比较
if-part( reply == "yes") {
Reply
是有价值的。
“是”是一个c字符串,因此大致相当于
const char *yes = "yes"
其中yes
是指向y_e_s中字符串中第一个字节的指针 - 例如,0x75243
所以你要将整数值与指针值(例如0x75243)进行比较,它们不太可能相等。
在java脚本中这可以工作(更好),因为它为你转换类型--C ++没有,至少不是这样。