我是Linux的新手。我正在尝试编译并执行c ++文件。当我阅读gcc手册时,在手册中发现了一些我不理解的内容:
许多选项的长名称以-f或-W ---开头 例如-fmove-loop-invariants,-Wformat等。这些大多数 同时具有正面和负面形式; -ffoo的否定形式是 -fno-foo。本手册仅记录这两种形式中的一种,不是默认形式。
有人可以解释一下命令行选项的正面和负面形式吗?
答案 0 :(得分:4)
该选项的正号启用编译器的某些功能,负号禁用该功能。
例如,-fmove-loop-invariants
启用此优化设置。要禁用它,请使用-fno-move-loop-invariants
。
同时使用这两种格式非常有用,因此您可以覆盖在构建脚本或makefile中使用默认选项集设置的选项。另外,某些选项可一次启用或禁用多组设置,然后您可以使用后面的更具体的选项来撤消部分设置。
有时您可能会使用与默认选项相同的选项,只是为了使您的意图明确。