【发布时间】:2020-09-30 15:09:40
【问题描述】:
我正在做一个作业,并且需求指令说“你的代码应该正确编译(没有警告和错误),没有其他标志。你应该将你的代码编译为可调试的可执行文件,而不会产生任何警告或错误消息。 (注意 -O 和 -o 是不同的标志。)"
所以我很困惑“no flags other -o”是什么意思。据我所知,“flag 是一种用于基本信号和识别的通用工具,尤其是在通信同样具有挑战性的环境中。”,那么这个要求是否意味着我们不能使用任何 for 循环?
【问题讨论】:
-
它们是编译器的标志,例如 gcc。你可以看到一个完整的列表online
-
flags 是您提供给编译器的选项,例如
-ofor gcc 允许指示目标可执行文件/二进制文件/...。请注意,该语句很奇怪,因为请求可调试的可执行文件,这通常意味着一个选项,例如用于 gcc 的-g,因此似乎仅与-o不兼容 -
"flag" 在这种情况下是编译器调用的命令行参数。所以:不要使用任何你需要指定输出文件的东西。
-
在这种情况下,标志是命令行选项,所以讲师说你可以使用
-o(破折号哦)选项到gcc,但不能使用其他选项。您可以在程序中使用任何您喜欢的 C 语言结构。 -
你确认编译器是 gcc 吗?如果是,我鼓励您使用
-Wall进行编译以强制执行问题检测
标签: c compiler-warnings flags