首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Vim /Syntastic上使用C文件中的NULL

在Vim /Syntastic上使用C文件中的NULL
EN

Stack Overflow用户
提问于 2020-05-02 18:08:24
回答 1查看 175关注 0票数 3

嘿哟!

我已经使用了一段时间的语法检查插件,并一直享受的经验,除了一个恼人的bug,我似乎不知道如何消除。

每当我尝试在我的C程序中使用NULL时,我都会得到一个以红色">>“表示的错误和一个错误气泡,表示"use of undeclared identifier 'NULL' [undefined:]"

我没有问题使用头文件和程序编译没有任何问题。当我试图实现使用空指针或NULL来表示空闲空间的数据结构时,看到一堆错误标志是非常令人恼火的。

我正在使用gcc编译器,并将vimrc中的编译选项设置为:

代码语言:javascript
复制
let g:syntastic_c_compiler_options= '-std=c18'

(如果我从vimrc中删除行并让它回到由语法检查器配置文件在-gnu99中设置的默认~/.vim/plugged/syntastic/syntax_checkers/c/gcc.vim,则不会发生任何变化)

:SyntasticInfo输出

代码语言:javascript
复制
Syntastic version: 3.10.0-7 (Vim 802, Linux, GUI)
Info for filetype: c
Global mode: active
Filetype c is active
The current file will be checked automatically
Available checkers: gcc make
Currently enabled checkers: gcc

希望这里有人处理过类似的问题或者有一些解决办法的想法。

提前谢谢!!

编辑1:同步配置命令在.vimrc中的应用

代码语言:javascript
复制
"Syntastic settings

let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0

"C Settings

let g:syntastic_c_compiler = 'gcc'
let g:syntastic_c_checkers=['gcc']
let g:syntastic_c_include_dirs=['/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/include']
let g:syntastic_c_auto_refresh_includes = 1
let g:syntastic_c_compiler_options= '-std=c18'
let g:syntastic_c_check_header = 1

增加这个来帮助诊断,必须说非常感谢大家付出他们的投入,并试图帮助我!

编辑2:

我编辑了编译器选项,以便:

代码语言:javascript
复制
let g:syntastic_c_compiler_options= '-I/usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/include -Wall -std=c18'

基于@ based 3629249的建议。现在,未声明的标识符'NULL‘错误显示在: error窗口中(这可以归因于-Wall标志)。但进步就是进步:)。只需要了解如何配置Syntastic来理解NULL,这实际上是在<stddef.h>中定义的。

EN

回答 1

Stack Overflow用户

发布于 2020-05-03 11:41:00

问题似乎是由于stddef.h文件在gcc文件夹中很深(参见上面)而不是在/usr/include中,所以Syntastic没有访问它。制作stddef.h的副本并将其放在/usr/include中似乎解决了我正在处理的有关NULL使用的问题。希望这不会引起任何进一步的问题。

再次感谢大家的投入,我希望这能给将来的人带来一些麻烦:)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61564101

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档