我想制作单元测试驱动程序
它使用以下内容读取tests.txt
:
I32 cdecl32 func(in I32, in szC8P32, out I32P32, out sC8P32)
in in out out ret out out ret ...
16 test 5 test2 1
被叫方有这样的声明:
int __cdecl func(const int, const char*, int*, char*);
测试驱动程序使用LoadLibrary
和GetProcAddress
来获取函数的地址
但是,驱动程序不会包含func
的声明。它将用于测试其他功能类型。像通用工具一样
应该通过解析tests.txt
来动态地给出参数。
有可能吗?我该怎么办?
答案 0 :(得分:0)
你要做的事很棘手。您必须将函数的声明与TXT文件中的定义相匹配。如果它们不完全匹配,您将有未定义的行为。
无论如何,您有两种选择:
libffi
,这是一个专为满足您的需求而设计的库。