使用js-ctypes——聲明並調用函數

原文:
https://developer.mozilla.org/en/js-ctypes/Using_js-ctypes/Declaring_and_calling_functions
函數的聲明使用Library對象的declare()方法。一旦聲明,函數就可以使用標準的函數語法進行調用。

例:無輸入參數

這個例子中,我們聲明libc的clock()函數,其返回值是系統啓動之後經歷的時間,然後獲取並輸出這個值。
const clock = lib.declare("clock", ctypes.default_abi, ctypes.unsigned_long);
console.log("Clocks since startup: " + clock());
clock()函數不需要輸入參數,它簡單的返回一個無符號長整型。

例:多個輸入參數

本例聲明一個libc 的asctime()函數,其功能是將一個時間結構體轉換爲字符串。
const asctime = lib.declare("asctime", ctypes.default_abi, ctypes.char.ptr, struct_tm.ptr);
本例更完整的版本請參見結構體例子(包含struct_tm類型的實現)

發佈了32 篇原創文章 · 獲贊 83 · 訪問量 29萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章