Linux中命令行选项的积极和消极形式是什么

Linux中命令行选项的积极和消极形式是什么,linux,gcc,command-line,Linux,Gcc,Command Line,我是Linux新手。我正在尝试编译和执行C++文件。当我阅读gcc手册时,我在手册中发现了一些我不理解的东西: 许多选项都有以-f或-W---开头的长名称 例如,-fmove循环不变量,-Wformat等等。其中大部分 既有肯定的形式,也有否定的形式;-ffoo的否定形式是 -福诺。本手册仅记录这两种形式中的一种,以非默认形式为准 有人能解释一下命令行选项的正反两种形式吗?该选项的正反两种形式启用编译器的某些功能,而负数形式禁用该功能 例如,-fmove loop invariants启用此优化

我是Linux新手。我正在尝试编译和执行C++文件。当我阅读gcc手册时,我在手册中发现了一些我不理解的东西:

许多选项都有以-f或-W---开头的长名称 例如,-fmove循环不变量,-Wformat等等。其中大部分 既有肯定的形式,也有否定的形式;-ffoo的否定形式是 -福诺。本手册仅记录这两种形式中的一种,以非默认形式为准


有人能解释一下命令行选项的正反两种形式吗?

该选项的正反两种形式启用编译器的某些功能,而负数形式禁用该功能

例如,
-fmove loop invariants
启用此优化设置。要禁用它,请使用
-fno move loop invariants

这两种形式都很有用,因此您可以覆盖可能已使用生成脚本或生成文件中的默认选项集设置的选项。此外,某些选项可以一次启用或禁用设置组,然后可以使用稍后更具体的选项撤消部分设置


有时,您可能会使用与默认选项相同的选项,只是为了明确您的意图。

嗯,我找不到重复的选项。或者,“很容易找到”+1问一个原创问题。呃,就像上面说的<代码>-ffoo和
-fno foo
。请注意,这是一个特定于GCC的约定。另外,因为某些标志可以同时更改标志组。Like-Wunused参数在默认情况下处于禁用状态,因此手册页会列出肯定形式的-Wunused参数,但如果您放置-Wall-Wextra,这是启用的警告之一,因此要再次仅关闭一个警告,请使用-Wall-Wextra-Wno unused参数。类似地,-O*优化标志会影响许多-f标志。