使用Understand for Mac编写您的第一个API脚本 Understand 使用教程
发布时间:2022-09-15 21:51:54
Understand具有广泛的API,可让您查询所捕获的有关代码的数据。它具有三种风格:Perl,Python和C。PerlAPI比其他两种更强大,因为它允许与Understand GUI交互,并且不需要其他设置。这三个API都是只读的,它们不会修改Understand项目。在创建Understanding Eclipse Plugin的过程中还编写了Java API 。但是,它更轻巧,没有其他API的全部功能。
打开一个理解项目
让我们先来看一个非常简单的Perl API脚本。
sample.pl
使用了解;
$ db =理解:: open(“ c:\ projects \ test.udb”);
foreach $ file($ db-> ents(“ file”)){
打印$ file-> longname(),“ \ n”;
}
第一行告诉Perl解释器您想使用Understand API库。然后,它将打开一个Understand项目文件(c:\ projectstest.udb),并遍历该项目中每个文件实体的列表,并在单独的行上打印每个文件的名称。
要自己运行它,请更改路径以指向您自己的项目之一。请注意,对于Windows路径,您需要通过将斜杠加倍来对其进行转义。
Uperl是bin \ system目录中的Understand随附的perl解释器。要运行此脚本,请打开命令行/终端并运行:
cd“ c:\ program files \ scitools \ bin \ pc-win64”或系统上的适当路径uperl.exe myscript.pl
这是Python 3 API的相同脚本。需要在系统上安装Python,并且正确理解Python库。
sample.py
导入了解
db =谅解.open(“ c:\ projects \ test.udb”)
对于db.ents(“ file”)中的文件:
打印(file.longname())
同样,C API也是如此。
样本
#include
#include
#include“ C:\ Program Files \ SciTools \ src \ udb \ udb.h”
静态字符* dbFilename =“ c:\ projects \ test.udb”;
mAIn(int argc,char * argv []){
UdbStatus status = udbDbOpen(dbFilename);
UdbEntity * ents;
int entsSize;
我
udbListEntity(“ file”,&ents,&entsSize);
对于(i = 0; i printf(“%s \ n”,udbEntityNameLong(ents [i]));
}
udbListEntityFree(ents);
udbDbClos??e();
}
生成文件
sample.exe:sample.obj
由于C API示例的大小,这些教程的其余部分将仅显示Perl和Python中的示例。


猜你喜欢
- net framework是一个系统组件,给部分应用软件提供功能上的支持,因此如果没有安装该组件,那么将会出现无法正常运行的情况。那么应该如
- ①首先我们启动Word2013,单击菜单栏--开始--样式,选择一种样式。 ②输入文字,如下图所示,方便之后的演示
- 在调整文档行距的过程中,有时候会出现失效的情况,这种情况怎样解决?下面给大家简单的介绍一下。第一步:点击如图所示的斜箭头
- 我们在使用excel时,会遇到这样的情况:一个工作表中某些单元格填充为某种颜色,要求将填充了某种颜色的单元格进行快速求和。我们在使用exce
- 首先按照正常的方法给文字添加下划线。将文字选中,单击格式工具栏上的“下划线”按钮添加下划线后,在该处文字前尾各输入一个空格,这样你会发现下划
- 技嘉 Aorus 17是一款性能非常强大的娱乐影音笔记本电脑,这款电脑搭载了英特尔第9代酷睿i7处理器自己性能级独立显卡,能够满足用户们日常
- Word如何快速制作合同封面的下划线?我们在制作合同的时候,通常会有很多地方需要使用到下划线的,如果是一个一个手动输入的话,那么将会很耗时间
- excel中怎么使用多个条件自定义排序?excel表格数据很多,想要调取不同的数据,就需要数据不同的条件,excel中怎么使用多个条件自定义
- 相信很多想要进军程序员的小白们都有这样的疑问:MacBook换成ARM芯片后,它还是程序员的开发利器吗?一些常用的开发工具在M1下能不能完美
- win8系统是微软公司在2012年推出的一款具有创新性的操作系统,相比原来的windows系统,win8系统在创新性上有了不错的表现,让用户
- win7旗舰版系统现在也十分的完善,但是总体来说,具体的操作中也难免会遇到一些乱七八糟的问题,今天就有用户前来咨询说,自己的win7旗舰版电
- 很多小伙伴关闭了win10系统的防火墙,系统总是弹出一个通知,这使得工作或玩游戏的人崩溃。我们怎么能关掉通知然后消失呢?今天,我要教你两种方
- 当我们用Excel来做报表时,为了让数据显得更加直观通常会加入图标,有很多小伙伴还不知道怎么在Excel插入图标,今天小编带来了Excel插
- 由于工作学习等原因,许多网民在其计算机上设置开机密码,以避免泄露其工作和个人信息。不同的Windows系统设置密码的方法略有不同。那么win
- 最近有网友朋友问Windows Server 2012如何远程刷新客户端组策略及IE代理设置?下面小编就带来Windows Server 2
- 手头没有现成的数据怎么办?这里,如何利用函数,在Excel表格中随机自动生成大量数字。今天,小编就教大家利用函数在Excel中随机生成大量数
- 我们在使用电脑的时候,都会遇到一些错误代码,错误代码各种各样,比如最近有用户的电脑出现c0000005异常代码,不知道该如何解决,以下小编就
- 今天,我们将给大家讲解的是使用金山wps将不同格式的文档合并为一个文档的方法。在教程中,我们将我们常见的txt,doc,wps三种文档合并为
- Win11没有NVIDIA显卡控制面板怎么修复?最近有用户反映这个问题,在使用电脑的时候遇到了这种情况,这是怎么回事呢?造成这种情况的可能原
- 计算机指令主要存放在“内存储器”中。计算机指令就是指挥机器工作的指示和命令,程序就是一系列按一定顺序排列的指令,执行程序的过程就是计算机的工