我在使用vim的大型项目中使用cscope,但没有vim映射(由于某种奇怪的原因,它们冻结了vim )。我在vim中使用cscope命令,我希望能够在整个代码中找到结构成员的用法。
假设我有这样的东西:
1 typedef struct _s{
2
3 int x;
4 } S;
5
6 int main(){
7
8 int x = 1;
9
10 S my_s;
11
12 my_s.x = 5;
13
14 return my_s.x;
15 }
如果我发出命令cs,f,它将返回S的成员变量和本地主变量。有没有一种方法,我只能找到S的成员变量的出现?
发布于 2011-05-31 19:31:27
我认为没有任何方法可以让cscope区分局部变量x和结构成员变量。
在我的公司,我们解决这个问题的方法是对成员变量使用唯一的命名方案,以帮助区分它们:
typedef struct _s{
int s_x;
} S;
一开始有点尴尬,但是一旦你习惯了它,它确实会让你更容易浏览代码。通常,统一词只是与结构相关的几个字符,它不会把事情弄得太乱。
发布于 2011-06-01 06:29:28
您可以将光标定位在结构变量"my_s“上,而不是搜索x,然后按组合键"gd”。这将使您在my_s的定义上定位,然后使用cscope找到S的定义。
https://stackoverflow.com/questions/6190955
复制相似问题