Declaring and Calling Functions

この記事はまだボランティアによって 日本語 に翻訳されていません。ぜひ MDN に参加して翻訳を手伝ってください!
この記事を English (US) で読むこともできます。

Functions are declared using the Library object's declare() method. Once declared, functions can be called using standard function syntax.

Prerequiste Understanding

See ABI.

Example: No input parameters

In this example, we declare the libc clock() function, which returns the elapsed time since system startup, then fetch and output that value.

const clock = lib.declare("clock", ctypes.default_abi, ctypes.unsigned_long);

console.log("Clocks since startup: " + clock());

The clock() function requires no input parameters; it simply returns an unsigned long.

Example: Multiple input parameters

This example declares the libc asctime() function, which converts a time structure into a string.

const asctime = lib.declare("asctime", ctypes.default_abi, ctypes.char.ptr, struct_tm.ptr);

For a more complete version of this example (including the implementation of the struct_tm type), see the structures example.

Returned values

If the return type can fit into a JavaScript number without loss (that is, it's a number 32 bits or smaller, or is a double or float), then the function just return a JavaScript number. For everything else it returns a ctypes object representing the return value (including 64-bit integers).


このページの貢献者: Noitidart, arai, Sheppy, Joliclic
最終更新者: Noitidart,