2

我是 Emacs 的新手。如何将 Flycheck 包设置为使用 C 标准 99(C99 模式)?对于以下代码:

for(int i = 0; i < n; i++)...

Flycheck 会扔给我:for loop initial declarations are only allowed in C99 mode.

4

1 回答 1

6

通过Directory VariablesFile Variablesflycheck-clang-language-standardor flycheck-gcc-language-standard(取决于您安装的工具)设置为。"gnu99"

对于前者,键入M-x add-dir-local-variable RET c-mode RET flycheck-clang-language-standard RET "gnu99"

要全局设置标准,请使用 C 模式挂钩设置每个缓冲区中的值:

(defun my-flycheck-c-setup ()
  (setq flycheck-clang-language-standard "gnu99"))

(add-hook 'c-mode-hook #'my-flycheck-c-setup)

不要用于setq-default更改全局值。如果您编辑 C++ 文件,这将中断。

于 2014-09-21T14:29:15.723 回答