“NEARDATA”在NetHack源代码中的含义是什么?
发布时间:2020-12-16 07:27:52 所属栏目:百科 来源:网络整理
导读:NetHack源代码(用C编写)有一些我不理解的东西. 可以在Nethack 3.4.3源代码中找到以下代码: STATIC_VAR NEARDATA struct engr *head_engr; (在http://nethackwiki.com/wiki/engrave.c#line9的engrave.c第9行) STATIC_PTR int NDECL(doprev_message); (在http
NetHack源代码(用C编写)有一些我不理解的东西.
可以在Nethack 3.4.3源代码中找到以下代码: STATIC_VAR NEARDATA struct engr *head_engr; (在http://nethackwiki.com/wiki/engrave.c#line9的engrave.c第9行) STATIC_PTR int NDECL(doprev_message); (在http://nethackwiki.com/wiki/cmd.c#line106的cmd.c第106行) STATIC_DCL char *NDECL(parse); (在cmd.c的第157行) 有人可以向我解释一下“NEARDATA”,“STATIC_VAR”,“STATIC_PTR”和“STATIC_DCL”是什么,以及它们的含义是什么? 解决方法
我做了一点检查…… NEARDATA在config1.h中定义,仅用于AmigaOS平台.在这种情况下,它意味着编译器相对于CPU寄存器引用数据段(存储全局和静态变量).
STATIC_ *定义似乎也依赖于平台. 因此,这是使用预处理器#define构造定义的所有特定于平台的事物,以确保源构建在不同的平台上. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |