跳轉到內容

C 程式設計/混合語言

來自華夏公益教科書,開放書籍,開放世界
上一篇: 語言擴充套件 C 程式設計 下一篇: GObject

彙編程式

[編輯 | 編輯原始碼]

參見 嵌入式系統/混合C和彙編程式設計

在 C 中建立主程式(用於 CPU),該程式載入並執行 Cg 程式(用於 GPU)。[1][2][3]

標頭檔案

[編輯 | 編輯原始碼]

新增到 C 程式中:[4]

#include <Cg/cg.h> /* To include the core Cg runtime API into your  program */
#include <Cg/cgGL.h>  /* to include the OpenGL-specific Cg runtime API */

最小程式

[編輯 | 編輯原始碼]

使用 Java 本地介面 (JNI),Java 應用程式可以呼叫 C 庫。

另見

為了混合 Perl 和 C,我們可以使用 XS。XS 是一種介面描述檔案格式,用於在 Perl 和希望與 Perl 一起使用的 C 程式碼(或 C 庫)之間建立擴充套件介面。

基本流程非常簡單。我們可以透過執行“h2xs”應用程式(例如“h2xs -A -n 模組名”)來建立必要的子目錄結構。這將在子目錄樹中建立 - 除其他外 - 一個 Makefile.PL、一個 .pm Perl 模組和一個 .xs XSUB 檔案。我們可以透過將我們的程式碼新增到其中來編輯 .xs 檔案,例如

void
hello()
  CODE:
    printf("Hello, world!\n");

並且在執行“perl Makefile.PL”和“make”之後,我們可以在 Perl 端成功使用我們的新命令。

更多詳細資訊可以在 perlxstut perldoc 頁面上找到。

這裡可以找到一些關於用 C 編寫的模組擴充套件 Python 的詳細資訊。您可能還會閱讀有關 CythonPyrex 的資訊,這些資訊使用 C 建立模組更容易,將類似 Python 的程式碼轉換為 C。

使用 Python ctypes 模組,可以在 Python 中直接編寫 C 程式碼。

進一步閱讀

[編輯 | 編輯原始碼]

參考文獻

[編輯 | 編輯原始碼]
  1. 課程:47 來自 NeHe Productions
  2. Cg 凹凸貼圖 by Razvan Surdulescu at GameDev
  3. [http://www.fusionindustries.com/default.asp?page=cg-hlsl-faq | Cg & HLSL 著色語言常見問題解答 by Fusion Industries]
  4. http://http.developer.nvidia.com/CgTutorial/cg_tutorial_appendix_b.html NVidia Cg 教程。附錄 B. Cg 執行時
  5. 用於良好基礎理解的絕對最小 CG 程式
上一篇: 語言擴充套件 C 程式設計 下一篇: 程式碼庫
華夏公益教科書