我正在处理4-5个.c文件(每个文件大约有2000到5000行),其中包含多个头文件。目前我没有任何调试打印信息,这些信息可以帮助我在程序执行过程中进行调试。
我的问题是: 是否有一种方法(或现有工具)来解析.c文件并为当前作用域中的所有变量添加新的打印语句?就像VC ++允许我们查看本地和全局变量等一样。我需要在每个步骤中打印它们。此外,应解除指针引用。
例如,在.c文件的某一点上,假设有10个全局变量和3个本地变量。我需要生成智能printf以在该点打印这13个变量。稍后在程序中如果有20个变量,我应该能够打印这20个变量等等。包含的头文件包含所有相关声明的变量(这些变量可以是结构/指针/数组或某些组合等等)。我试图通过perl脚本实现此目标。
我所做的是,我生成了预处理文件(.i文件),然后尝试通过perl解析它,然后针对每个变量生成单独的打印函数,但经过半天的努力,我意识到这需要太长时间了。 是否有已经完成此任务的工具?如果没有,任何接近它的东西都足够好(我可以对其应用一些perl处理等) 我的目标是,在程序执行期间的每个步骤中,我应该能够看到在该作用域内有效的变量,并且无需调用调试器即可实现。
我允许处理.c文件并重新编写它们等等。 希望我的问题清楚,并感谢您的回复。
我的问题是: 是否有一种方法(或现有工具)来解析.c文件并为当前作用域中的所有变量添加新的打印语句?就像VC ++允许我们查看本地和全局变量等一样。我需要在每个步骤中打印它们。此外,应解除指针引用。
例如,在.c文件的某一点上,假设有10个全局变量和3个本地变量。我需要生成智能printf以在该点打印这13个变量。稍后在程序中如果有20个变量,我应该能够打印这20个变量等等。包含的头文件包含所有相关声明的变量(这些变量可以是结构/指针/数组或某些组合等等)。我试图通过perl脚本实现此目标。
我所做的是,我生成了预处理文件(.i文件),然后尝试通过perl解析它,然后针对每个变量生成单独的打印函数,但经过半天的努力,我意识到这需要太长时间了。 是否有已经完成此任务的工具?如果没有,任何接近它的东西都足够好(我可以对其应用一些perl处理等) 我的目标是,在程序执行期间的每个步骤中,我应该能够看到在该作用域内有效的变量,并且无需调用调试器即可实现。
我允许处理.c文件并重新编写它们等等。 希望我的问题清楚,并感谢您的回复。