DLL符号_FooBar@16
中的数字16代表什么?
答案 0 :(得分:8)
这意味着_FooBar是一个__stdcall函数,它接受16个字节的参数。
x86上的32位调用约定在此处描述:http://blogs.msdn.com/oldnewthing/archive/2004/01/08/48616.aspx
答案 1 :(得分:5)
这是通用名称修改,取决于函数的调用约定。
应用于函数的各种调用约定和名称修改记录为Argument Passing and Naming Conventions。您必须单击各个链接才能看到应用的确切修改。
在您的情况下,您有__stdcall
约定,该约定使用以下命名约定:
下划线(_)以前缀为前缀 名称。名称后跟at 符号(@)后跟数字 参数中的字节(十进制) 名单。因此,声明了函数 as int func(int a,double b)是 装饰如下:_func @ 12