我在 C 语言中有一个大型源代码树,我很感兴趣在源文件中搜索对两个特定函数 sin() 和 cos() 的调用,并将相同的参数传递给这两个函数。几个例子:
double t = sin(1.2) + cos(1.2); //match
y = sin ( x/a ); //match
z = cos(x / a );
j = sin(x) + cos(y); //no match
if (something) {
x = sin(x); // match
y = cos(x);
}
if (something)
x = sin(x); //no match!!! This is a tough case...
else
y = cos(x)
所以问题是:如何实现一个可以在典型的 Linux shell 上运行的程序/脚本,它将搜索上述内容?