我继承了一个非常古老(超过 15 年)的 C++ 程序,该程序当前使用 IBM 的 xlc 编译器在 AIX 上运行。我遇到了一个 switch 语句,但我不明白它是如何工作的。
\n下面是一个显示这种情况的最小示例。
\n#include <iostream>\nusing namespace std;\n\nint main()\n{\n int i=5;\n\n switch( i ) {\n case 1:\n cout << "case " << i << endl;\n break;\n case 2:\n cout << "case " << i << endl;\n break;\n Otherwise:\n cout << "case " << i << endl;\n break;\n }\n cout << "bye\\n";\n}\nRun Code Online (Sandbox Code Playgroud)\n我在 Amazon Linux 2 上使用 GCC 7.3.1。该程序编译良好并显示以下输出:
\nbye\nRun Code Online (Sandbox Code Playgroud)\n如果我添加“-Wall”,那么它会告诉我以下内容:
\nminex.C: In function \xe2\x80\x98int …Run Code Online (Sandbox Code Playgroud)