c 语法 LONG (NTAPI 名称) (type1,type2...);

标签 c grammar

我正在读取 ring 0 权限获取 source code在 Windows XP 中

在该代码中,

有2行

哪些是

LONG (NTAPI *NtSystemDebugControl)     (int,void*,DWORD,void*,DWORD,DWORD*);
*(DWORD*)   &NtSystemDebugControl =(DWORD)GetProcAddress(LoadLibrary("ntdll"),"NtSystemDebugControl");

第一次看到这样的语法

这两行是什么意思?

最佳答案

第一行创建一个函数指针,第二行以一种相当可怕的方式初始化函数指针(它会在 64 位机器上失败,尽管在这种情况下这可能无关紧要)。

如果您要问 GetProcAddress 是什么,我建议您阅读 MSDN 中的内容。 .

关于c 语法 LONG (NTAPI 名称) (type1,type2...);,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6493473/

相关文章:

c - Xtext - 在没有语义谓词的情况下解决歧义?

c - 我的 strlcpy 版本

iphone - cocos2d ccArray 删除对象很慢

c - 读取第一个数据点时程序崩溃

java - 如何指定 Antlr4 中表达式大小的大小?

ANTLR4 相互左递归

parsing - 可以使用ANTLR解析大文件吗?

eclipse - 从语法构建符号表

c - C语言中变量的类型

c++ - 三个一维或一个二维