C ++在XCode上执行cin和cout的执行顺序无效

时间:2017-03-31 05:55:04

标签: c++ xcode gcc

当我更新了MacOS和XCode时,我遇到了这个问题。

正如您在第一张图片中看到的那样,如果我没有将cout放入第二条cin行"请输入数字"在第11行,这一行放在cout语句之后,这使得程序运行不正常。

接受cin

的输入后会打印endl

Sample C++ code

以下是该计划的输出:

enter image description here

但是,如果我将"Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/include/c++/4.2.1 Apple LLVM version 8.1.0 (clang-802.0.38) Target: x86_64-apple-darwin16.5.0 Thread model: posix InstalledDir:/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin" 放在该行的末尾"输入数字"然后代码正常运行。

我已经重新安装了XCode,问题仍然存在。它也影响了我真正讨厌的旧项目。

这是我的Macbook上的编译器版本

{{1}}

我真的希望有人可以帮我解决这个问题。我不知道这个错误来自XCode或GCC。

1 个答案:

答案 0 :(得分:1)

std::cinstd::cout 绑定,这意味着std::cin上的提取操作首先刷新std::cout。所以你的代码应该像你期望的那样工作。如果它没有,那么你的代码使用的标准库不符合语言定义(不太可能),或者你的控制台窗口中有一些时髦的东西(更有可能)。尝试从命令行运行该程序。