C编程
Completion requirements
汇编语言(Assembler)
参见《嵌入式系统/混合 C 和汇编编程》
Cg
将主程序(用于 CPU)用 C 编写,加载并运行 Cg 程序(用于 GPU)。
头文件
在 C 程序中添加以下内容:
#include <Cg/cg.h> /* 包含核心 Cg 运行时 API 到你的程序中 */
#include <Cg/cgGL.h> /* 包含 OpenGL 特定的 Cg 运行时 API */
最小程序
由 bobobobo 提供。
Java
使用 Java 本地接口(JNI),Java 应用程序可以调用 C 库。
参见:
Perl
要将 Perl 和 C 混合,可以使用 XS。XS 是一种接口描述文件格式,用于创建 Perl 和 C 代码(或 C 库)之间的扩展接口,以便与 Perl 一起使用。
基本过程非常简单。我们可以通过运行 "h2xs" 应用程序来创建必要的子目录结构(例如 "h2xs -A -n Modulename")。这将创建一个 Makefile.PL、一个 .pm Perl 模块和一个 .xs XSUB 文件在子目录树中。我们可以通过将我们的代码添加到 .xs 文件中来编辑它,例如:
void
hello()
CODE:
printf("Hello, world!\n");
运行 "perl Makefile.PL" 和 "make" 后,我们可以成功地在 Perl 侧使用我们的新命令。
更多细节可以在 perlxstut perldoc 页面找到。
Python
这里提供了将 Python 扩展为使用 C 编写的模块的一些细节。你还可以了解 Cython 和 Pyrex,它们使得创建 C 模块变得更容易,将类似 Python 的代码转换为 C。
这个部分是一个存根。你可以通过扩展它来帮助维基书籍。
通过使用 Python 的 ctypes 模块,可以直接在 Python 中编写 C 代码。
进一步阅读
- 《嵌入式系统/混合 C 和汇编编程》
参考资料
- Lesson: 47 from NeHe Productions
- Cg Bumpmapping by Razvan Surdulescu at GameDev
- Cg & HLSL Shading Language FAQ by Fusion Industries
- NVidia Cg tutorial. Appendix B. The Cg Runtime
- Absolutely minimal CG program for good fundamentals understanding
Last modified: Sunday, 12 January 2025, 1:33 PM