当前位置: 代码迷 >> C语言 >> 请教下高手 大家都来给下建议啊
  详细解决方案

请教下高手 大家都来给下建议啊

热度:6   发布时间:2008-03-15 19:18:00.0
请教下高手 大家都来给下建议啊
请问在一个很长的C源程序中,怎样设计一个程序,检测出源程序中自定义函数,以及如何检测出这些函数有没有被调用?谢谢。

[[it] 本帖最后由 zgthbin 于 2008-3-15 20:11 编辑 [/it]]
搜索更多相关的解决方案: 检测  源程序  

----------------解决方案--------------------------------------------------------
检测出源程序中自定义函数,在vc里能直接看到,
检测出这些函数有没有被调用貌似可以用vc6的debug单步执行
----------------解决方案--------------------------------------------------------
我是不是该得做个类似词法分析器、语法分析器、语义分析器?
----------------解决方案--------------------------------------------------------
回复 2# 的帖子
能否详述?谢谢
----------------解决方案--------------------------------------------------------
回复 3# 的帖子
那好像就是做编译器了,c的编译器很大呢
----------------解决方案--------------------------------------------------------
用vc6编译一下,旁边会有一个globals打开就看到所有的自定义函数和全局变量
编译过后,按f5会有DEBUG工具条,自己试验一下就可以了。程序有多大?
----------------解决方案--------------------------------------------------------
代码不少于20000行,老师要我做一个东西来检测自定义函数及其调用情况。我现在没有一点头绪。
----------------解决方案--------------------------------------------------------
是否可以利用globals中显示出的函数名来做文章?利用汇编做个词法分析器,把这些函数名作为关键字,来扫描源代码,然后再与“()”来匹配,就能确定该函数被调用过。
----------------解决方案--------------------------------------------------------
个人感觉可以这样检查是否被调用
首先把所有的函数找出来(函数的后面有括号)
再检测,如果不是库函数,并且至少有一次前面出现了类型说明(防止是带残宏),还有一次前面没有类型说明就可以说明函数被调用了
----------------解决方案--------------------------------------------------------
谢谢LS提供的帮助。还要其他人可以进来大家一起讨论下啊
----------------解决方案--------------------------------------------------------
  相关解决方案