C++ if/else语句问题

标签 c++ xcode c++11 if-statement

<分区>

前几天我在使用 xcode,并且正在开发一个基于文本的对话游戏。

#include <iostream>

int main()
{
    std::cout<<"Conversation simulator requires you to type in all caps for all  of your replies"<<std::endl;
    std::cout<<"Type your first and last name!"<<std::endl;
    std::string fname = " ";
    std::string lname = " ";
    bool samename = false;
    std::cin>> fname >> lname ;
    if  (fname == "MUSCLE" and lname == "MAN")
        std::cout<< "Wow, we have the same first and last name!"<<std::endl;
        samename = true;
    else
        std::cout<< fname << " "<< lname << "is a very nice name"<<std::endl;

return 0;
}

对我来说似乎没什么问题,但 Xcode 不会运行,因为在这一行:

else

它期待一个表达式?我想不出这意味着什么。

最佳答案

如果您希望在 if 下执行多个语句,则需要大括号。这是为我编译的修复程序。

#include <iostream>

int main()
{
        std::cout<<"Conversation simulator requires you to type in all caps for all  of your replies"<<std::endl;
        std::cout<<"Type your first and last name!"<<std::endl;
        std::string fname = " ";
        std::string lname = " ";
        bool samename = false;
        std::cin>> fname >> lname;
        if  (fname == "MUSCLE" and lname == "MAN") {
                std::cout<< "Wow, we have the same first and last name!"<<std::endl;
                samename = true;
        } else {
                std::cout<< fname << " "<< lname << "is a very nice name"<<std::endl;
        }
        return 0;
}

关于C++ if/else语句问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38131572/

相关文章:

swift - 即使父节点正在移动,如何为每个节点在屏幕上提供相同的起始位置?

ios - 我试图在 Xcode Run Script 构建阶段返回一个非零退出代码,但它不起作用

ios - 如何在 React Native iOS 中发现内存泄漏?

c++ - 从转发函数的类型推断的模板化返回类型

固定大小的 C++ 数组获取垃圾值

c++ - 检测窗口何时与来自相同或不同进程的另一个窗口重叠

c++ - 如何在 -std=c++11 -Weverything -Werror 中使用 clang++

c++ - 创建一个空的 shared_ptr 最简单的方法是什么?

c++ - 为什么这个函数对象不需要指定?

c++ - 来自垂死的多线程进程的核心转储