gpt4 book ai didi

c - 什么是AST、CFG、CLANG,我们如何在deadcode去除算法中使用它们?

转载 作者:太空宇宙 更新时间:2023-11-04 06:41:40 27 4
gpt4 key购买 nike

<分区>

我正准备使用 C 语言为我们团队的在线事件编写一个死代码删除算法。

要求是......

  1. 读取C程序源文件,其中有多种形式的死代码。
  2. 我们的输出应该是一个没有死代码的文件。

在网上冲浪时,我们遇到了 SO 链接...

How can I know which parts in the code are never used?

Dead code detection in legacy C/C++ project

在看到这些链接之前,我们有基本的想法...... 使用普通文件流逐行读取输入 C 文件并存储在字符串数组中。 然后分析这些字符串并确定非常基本的死代码,如 if(0) 和 if(1) 等。 并制作一个堆栈,用于维护括号。还有更多...

但这有一个很大的问题,这个想法会导致我们更多地使用字符串操作而不是删除死代码。

但是在看到这些链接之后...我们了解到Clang 库、抽象语法树、控制流图等...

但我们对那些库和那些概念还很陌生。我们了解到它们用于解析 C 代码。

因此我们需要一些关于这些 AST、CFG 的基本概念和一些基本指导,解释我们如何使用在我们的代码中...

我们能否将 clang 库作为像 math.h 这样的普通库包含进来?

我们在哪里可以下载该库?

我们可以在 Windows 中使用那些 Clang 库吗?

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com