正则表达式查找特定函数类型的函数(C语言)
比如在一个文本文件中,有一个函数声明doublesqrt();一个函数定义doublesqrt(x);一个函数调用sqrt(x)当然对我来说,我最想找到的函数定义(定义比...
比如在一个文本文件中,
有
一个函数声明double sqrt();
一个函数定义double sqrt(x);
一个函数调用sqrt(x)
当然对我来说,我最想找到的函数定义(定义比声明多了参数,定义比调用多了函数返回类型)
我想问一下在我知道函数名的情况如何搜索函数的定义。
我大概想了一下用正则表达式,但是表达式不太会写。望指教。
我的思路是:
某干种常见的类型 函数名(变量名非空)
这种模式进行搜索。
是在Linux下VI编辑器或
grep中查找。
***********
我只想搜出函数定义那一行!!!!!!!
函数声明中忽略所有的参数,
函数定义时,参数的类型放在()与{}中间,
函数调用时,肯定不会写返回类型。
比如
我写了一个浮点数开根号的代码。它的定义:
double sqrt(x)
double x
{
....
return **
}
函数声明时,只用double sqrt()
函数调用时,一般是x2=sqrt(x)
======
我只想搜出函数定义那一行!!!!!!!
即:double sqrt(x)
当然函数名我是已知的。就是写一个正则表达式,来区分定义,声明,调用。
是否满意,三楼至少是150分。 展开
有
一个函数声明double sqrt();
一个函数定义double sqrt(x);
一个函数调用sqrt(x)
当然对我来说,我最想找到的函数定义(定义比声明多了参数,定义比调用多了函数返回类型)
我想问一下在我知道函数名的情况如何搜索函数的定义。
我大概想了一下用正则表达式,但是表达式不太会写。望指教。
我的思路是:
某干种常见的类型 函数名(变量名非空)
这种模式进行搜索。
是在Linux下VI编辑器或
grep中查找。
***********
我只想搜出函数定义那一行!!!!!!!
函数声明中忽略所有的参数,
函数定义时,参数的类型放在()与{}中间,
函数调用时,肯定不会写返回类型。
比如
我写了一个浮点数开根号的代码。它的定义:
double sqrt(x)
double x
{
....
return **
}
函数声明时,只用double sqrt()
函数调用时,一般是x2=sqrt(x)
======
我只想搜出函数定义那一行!!!!!!!
即:double sqrt(x)
当然函数名我是已知的。就是写一个正则表达式,来区分定义,声明,调用。
是否满意,三楼至少是150分。 展开
展开全部
函数定义double sqrt(x)
double x
{
....
return **
}
函数声明时,只用double sqrt()
函数调用时,一般是x2=sqrt(x)
函数调用时,一般是x2 = sqrt(x)
函数定义double sqrt (x)
函数定义double sqrt( x )
函数定义double sqrt( x2 )
函数定义double sqrt( _x )
函数定义double sqrt( x_ )
函数定义double sqrt( x_y )
函数定义double sqrt( _x, y )
函数定义double sqrt ( xy )
函数定义double sqrt( xy )
你的函数都有形参的么
egrep -in '[[:alpha:]]+[[:space:]]+sqrt[[:space:]]*\([[:space:]]*.*[[:alpha:]]+.*[[:space:]]*\)'
考虑了以上几种情形,包括制表符,都符合条件,你看还有什么情形遗漏,可以自行补充一下,共匹配10个结果
double x
{
....
return **
}
函数声明时,只用double sqrt()
函数调用时,一般是x2=sqrt(x)
函数调用时,一般是x2 = sqrt(x)
函数定义double sqrt (x)
函数定义double sqrt( x )
函数定义double sqrt( x2 )
函数定义double sqrt( _x )
函数定义double sqrt( x_ )
函数定义double sqrt( x_y )
函数定义double sqrt( _x, y )
函数定义double sqrt ( xy )
函数定义double sqrt( xy )
你的函数都有形参的么
egrep -in '[[:alpha:]]+[[:space:]]+sqrt[[:space:]]*\([[:space:]]*.*[[:alpha:]]+.*[[:space:]]*\)'
考虑了以上几种情形,包括制表符,都符合条件,你看还有什么情形遗漏,可以自行补充一下,共匹配10个结果
展开全部
http://www.dotnet2themax.com/blogs/fbalena/PermaLink,guid,13bce26d-7755-441e-92b3-1eb5f9e859f9.aspx
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
选择函数,右键 GO TO XXX(函数) DEFINATION 或者中文为,转到 XXX(函数)定义(参考)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询