我想不出一个好方法来命名这个问题,因为问题的描述相当冗长。基本上,我遇到的问题是,我在 Mac 上的 Xcode 中编写的代码在上传到学校的 Linux 服务器后运行不一样。我以前从未遇到过这个问题。这不是一个语法问题,这是我可能遇到的问题(IE也许我不需要在Xcode上包含某个需要包含在Linux服务器上运行的头文件,所以当我尝试在那里编译时会收到错误),但它是一个逻辑错误。一个特定的 if-else 语句的评估完全错误。它在 Xcode 中可以正常工作,但是将相同的 .cc 文件上传到 Linux 服务器并使用 makefile 进行编译,它会产生完全不同的结果,使用与 Xcode 中使用的完全相同的输入。我什至在上传后用 emacs 打开 .cc 文件,以确保没有任何代码因上传失败而被更改,但实际上什么都没有改变。这很奇怪。我以前从未遇到过此类问题。我想提供代码,但它可能太长了,所以我需要将其分解为一个较小的示例。现在,我想知道其他人是否遇到过这种情况。该作业涉及图论。我输入“A”和“B”来绘制两个顶点之间的边。您可以看到它在 Xcode 构建中有效,但在 Linux 构建中无效。
最佳答案
我发现了错误。在 Xcode 中,由于某种原因,我将一个字符输入到字符串中,如“cin >> string[0]”,效果很好,但这在 Linux 服务器上编译时导致了问题。它不接受数组样式输入,我必须使用“cin >> string”
关于c++ - 在 Linux 服务器上编译代码似乎运行方式不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40798133/