d的导入c.

d基本可直接调用C代码.但需要.h头文件.那么,为什么d不直接从.h文件读呢,即将该步骤解决掉.
d内置集成文档已经不错了.但由于c预处理器,所以经常放弃.

步骤

1.忘记c预处理器
2.忽略C++.
3.前端放真正c编译器.
4.叫ImportC/导入c来区别
细节:
1,仅编译已预处理c代理.如构建代码为gcc -E stdio.h >stdio.c,从而,在d端,可以import stdio;//读stdio.c并编译它.用gcc来干预处理c的脏活.
2.没有c预处理器,c编译器相对简单,可编译至d内部数据结构类型.
3,dmdd部分不知道其为c代码,只是另一个导入.对d,无需改变.
就像单元测试/文档,内置至编译器对其他更好C具有很大优势.

导入c作为c编译器.

int printf(const char*, ...);

int main()
{
    printf("你好啊.");
}

编译并运行

dmd hello.c
./hello
你好啊.

还有许多未完成.与标准c11也有许多区别.
使用d编译器来处理语义有额外好处,如编译时执行函数,d编译器就像d一样执行导入c函数.
导入c++,不会的,用dpp.

posted @ 2021-05-10 08:50  zjh6  阅读(21)  评论(0)    收藏  举报  来源