加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

vim:显示C聚合(struct / union)成员的类型,即使在嵌套时也是如

发布时间:2020-12-15 22:38:12 所属栏目:安全 来源:网络整理
导读:我经常发现自己正在阅读包含表达式的其他开发人员的C代码 ptr-member1.member2[i].another_member.final_member = 42; 并且需要找出final_member的类型.通常我所做的是使用C标签追踪类型链,从ptr的声明开始,然后挖掘我的方式进入成员链.这很麻烦,经常我被困
我经常发现自己正在阅读包含表达式的其他开发人员的C代码

ptr->member1.member2[i].another_member.final_member = 42;

并且需要找出final_member的类型.通常我所做的是使用C标签追踪类型链,从ptr的声明开始,然后挖掘我的方式进入成员链.这很麻烦,经常我被困在某个地方挠头,问自己“链中的下一个成员是什么?”更糟糕的是,源树中的final_member的简单grep由于名称在多个结构中重用而导致过多的误报.

有没有办法让vim直接给我答案?我愿意安装任何插件,甚至在光标位于final_member上时键入几个字符或选择整个表达式:-)非GUI解决方案首选.

解决方法

我真的建议你使用插件clang_complete(或其他一些由clang驱动的插件)来完成.它将通过真正的编译器为您提供纯粹的C/C++ / Objective-C代码完成,而不是标签的丑陋方法.完成菜单中的每个项目也都有字段类型(这就是您要查找的内容)

Omnicppcomplete经常在复杂的表达式上失败. Clang工作得很好,因为它是真正令人敬畏的编译器.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读