python中如何移植c到d03
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章给大家介绍python中如何移植c到d03,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。// In Cextern void someCFunction(void);//
千家信息网最后更新 2026年11月03日python中如何移植c到d03
这篇文章给大家介绍python中如何移植c到d03,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
// In C
extern void someCFunction(void);
// In D
extern( C ) void someCFunction();
extern(Windows),则表明stdcall调用约定.在c头上类似__stdcall前缀.在窗口上,则是类似WINAPI, APIENTRY,和PASCAL的东西.
// In C
#define WINAPI __stdcall
extern WINAPI void someWin32Function(void);
// In D
extern( Windows ) void someWin32Function();
extern(System)在绑定OpenGL等库时有用.在窗口中用stdcall,在其他系统用cdecl.
// In C
#ifdef _WIN32
#include
#define MYAPI WINAPI
#else
#define MYAPI
#endif
extern MYAPI void someFunc(void);
// In D
extern(System) void someFunc();
//跟随系统走
实践中有许多技术来添加调用约定,要仔细检查头.在d中,可以统一起来,而不是挨个加:
//属性块
extern( C )
{
void functionOne();
double functionTwo();
}
//或这样
extern( C ):
void functionOne();
void functionTwo();
d曾经有Typedefs,其创建新类型,而不是别名.d的别名,则不创建新类型,只是另外一个名字.typedef已过时,除了在构中,别名是c的typedef在d的等价物.c中有大量typedef.
typedef int foo_t;
typedef float bar_t;
d接口中最好保留原型名.d接口要尽量兼容c接口.这样,示例啊,其他代码啊都可以容易的移植过来.
第一件事是如何将整/浮转至d.对接细节文档
这样:
alias int foo_t;
alias float bar_t;
注意长/正长.
// C头
typedef long mylong_t;
typedef unsigned long myulong_t;
//D模块
import core.stdc.config;
//导入是私,但别名是公,外部可见
alias c_long mylong_t;
alias c_ulong myulong_t;
长正长见入门
翻译c的stdint.h时,两种方法:
// From SDL_stdinc.h
typedef int8_t Sint8;
typedef uint8_t Uint8;
typedef int16_t Sint16;
typedef uint16_t Uint16;
...
// In D, 不用core.stdc.stdint
alias byte Sint8;
alias ubyte Uint8;
alias short Sint16;
alias ushort Uint16;
...
//用导入
import core.stdc.stdint;
alias int8_t Sint8;
alias uint8_t Uint8;
alias int16_t Sint16;
alias uint16_t Uint16;
...
用本地类型,长度固定,很直接.用core.stdc.stdint,复制了一份c头,用别名替换typedef.
关于python中如何移植c到d03就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
别名
移植
接口
类型
内容
更多
系统
帮助
约定
不错
过时
不用
东西
中用
代码
兴趣
前缀
原型
只是
名字
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
北京互联网科技公司
致聘互联网科技
智慧科技互联网
天津摩尔互联网科技
美国互联网黑科技
广州凡科互联网科技
互联网科技公司有哪些
一五八零互联网科技
互联网大会黑科技排名
互联网5g黑科技有哪些
电子科技大学互联网创业大赛
互联网科技人工智能实验室
中国科技创新与世界互联网大会
燊美集互联网科技有限公司
互联网科技的全部知识
阿里互联网科技企业
恒生互联网科技业指数调整周期
下一代互联网重大应用科技园
广州梦谷互联网科技有限公司领导
绵阳真晨互联网科技有限公司
科技互联网公司logo
融势互联网科技
时间互联网络科技
成都狮子座互联网科技
互联网金融科技委员会
天速互联网络科技有限公司
福州新华互联网科技学校 知乎
小米互联网科技园入驻
伍佰万互联网科技怎么赚钱
工业互联网科技创业