るりまサーチ

最速Rubyリファレンスマニュアル検索!
393件ヒット [301-393件を表示] (0.085秒)

別のキーワード

  1. pointer []
  2. pointer []=
  3. pointer to_s
  4. pointer to_str

ライブラリ

クラス

モジュール

キーワード

検索結果

<< < ... 2 3 4 >>

Array#pack(template) -> String (407.0)

配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。

...)
//emlist[][ruby]{
"\x01\xFE".unpack("c*") # => [1, -2]

[1, -2].pack("c*") # => "\x01\xFE"
[1, 254].pack("c*") # => "\x01\xFE"
//}

: C

unsigned char (8bit 符号なし整数)
//emlist[][ruby]{
"\x01\xFE".unpack("C*") # => [1, 254]

[1, -2].pack("C*") # => "\x01\xFE"
[1, 254].pack("C*") # =>...
...*") # => [513, -514]

[513, 65022].pack("s*") # => "\x01\x02\xFE\xFD"
[513, -514].pack("s*") # => "\x01\x02\xFE\xFD"
//}

ビッグエンディアン (SPARC64):
//emlist[][ruby]{
"\x01\x02\xFE\xFD".unpack("s*") # => [258, -259]

[258, 65277].pack("s*") # => "\x01\x02\xFE\xFD"
[258, -259].pack("s*...
...2].pack("s*") # => "\x01\x02\xFE\xFD"
[513, -514].pack("s*") # => "\x01\x02\xFE\xFD"
//}

ビッグエンディアン (SPARC64):

//emlist[][ruby]{
"\x01\x02\xFE\xFD".unpack("S*") # => [258, 65277]

[258, 65277].pack("S*") # => "\x01\x02\xFE\xFD"
[258, -259].pack("S*") # => "\x01\x02\xFE\xFD"
//...

Array#pack(template, buffer: String.new) -> String (407.0)

配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。

...)
//emlist[][ruby]{
"\x01\xFE".unpack("c*") # => [1, -2]

[1, -2].pack("c*") # => "\x01\xFE"
[1, 254].pack("c*") # => "\x01\xFE"
//}

: C

unsigned char (8bit 符号なし整数)
//emlist[][ruby]{
"\x01\xFE".unpack("C*") # => [1, 254]

[1, -2].pack("C*") # => "\x01\xFE"
[1, 254].pack("C*") # =>...
...*") # => [513, -514]

[513, 65022].pack("s*") # => "\x01\x02\xFE\xFD"
[513, -514].pack("s*") # => "\x01\x02\xFE\xFD"
//}

ビッグエンディアン (SPARC64):
//emlist[][ruby]{
"\x01\x02\xFE\xFD".unpack("s*") # => [258, -259]

[258, 65277].pack("s*") # => "\x01\x02\xFE\xFD"
[258, -259].pack("s*...
...2].pack("s*") # => "\x01\x02\xFE\xFD"
[513, -514].pack("s*") # => "\x01\x02\xFE\xFD"
//}

ビッグエンディアン (SPARC64):

//emlist[][ruby]{
"\x01\x02\xFE\xFD".unpack("S*") # => [258, 65277]

[258, 65277].pack("S*") # => "\x01\x02\xFE\xFD"
[258, -259].pack("S*") # => "\x01\x02\xFE\xFD"
//...

String#unpack(template) -> Array (407.0)

Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。

...)
//emlist[][ruby]{
"\x01\xFE".unpack("c*") # => [1, -2]

[1, -2].pack("c*") # => "\x01\xFE"
[1, 254].pack("c*") # => "\x01\xFE"
//}

: C

unsigned char (8bit 符号なし整数)
//emlist[][ruby]{
"\x01\xFE".unpack("C*") # => [1, 254]

[1, -2].pack("C*") # => "\x01\xFE"
[1, 254].pack("C*") # =>...
...*") # => [513, -514]

[513, 65022].pack("s*") # => "\x01\x02\xFE\xFD"
[513, -514].pack("s*") # => "\x01\x02\xFE\xFD"
//}

ビッグエンディアン (SPARC64):
//emlist[][ruby]{
"\x01\x02\xFE\xFD".unpack("s*") # => [258, -259]

[258, 65277].pack("s*") # => "\x01\x02\xFE\xFD"
[258, -259].pack("s*...
...2].pack("s*") # => "\x01\x02\xFE\xFD"
[513, -514].pack("s*") # => "\x01\x02\xFE\xFD"
//}

ビッグエンディアン (SPARC64):

//emlist[][ruby]{
"\x01\x02\xFE\xFD".unpack("S*") # => [258, 65277]

[258, 65277].pack("S*") # => "\x01\x02\xFE\xFD"
[258, -259].pack("S*") # => "\x01\x02\xFE\xFD"
//...

Fiddle::Importer#import_symbol(name) -> Fiddle::Pointer (208.0)

取り込んだライブラリからシンボルをインポートします。

...取り込んだライブラリからシンボルをインポートします。

返り値はシンボルがロードされたメモリのアドレスを持つ Fiddle::Pointer
オブジェクトを返します。

@param name シンボル名(文字列)...

Fiddle::CStruct#to_ptr -> Fiddle::Pointer (202.0)

保持している構造体へのポインタを返します。

保持している構造体へのポインタを返します。

絞り込み条件を変える

Fiddle::Importer#bind(signature, *opts) { ... } -> Fiddle::Function (125.0)

Ruby のブロックを C の関数で wrap し、その関数をモジュールに インポートします。

...x.to_s(Fiddle::SIZEOF_INT).unpack("i!")
y = py.to_s(Fiddle::SIZEOF_INT).unpack("i!")

x <=> y
}
end

data = [32, 180001, -13, -1, 0, 49].pack("i!*")
M.qsort(Fiddle::Pointer[data], 6, Fiddle::SIZEOF_INT, M["compare"])
p data.unpack("i!*") # => [-13, -1, 0, 32, 49, 180001]...

Fiddle::Function#call(*args) -> Integer|DL::CPtr|nil (119.0)

関数を呼び出します。

...引数の変換は以下の通りです。

: void* (つまり任意のポインタ型)
nil ならば C の NULL に変換されます
Fiddle::Pointer は保持している C ポインタに変換されます。
文字列であればその先頭ポインタになります。
IO オブジェ...
...ます。
整数であればそれがアドレスとみなされます。
to_ptr を持っているならば、それを呼びだし Fiddle::Pointer
変換したものを用います。
to_i を持っているならば、それを呼びだし結果の整数を
アドレスと見なし...
...

: void
nil を返します

: (unsigned) char/short/int/long/long long
C の整数を Ruby の整数に変換します

: void*(つまり任意のポインタ型)
C のポインタを保持した Fiddle::Pointer を返します。

@param args 関数の引数
@see Fiddle::Function.new...

Fiddle::Importer#sizeof(t) -> Integer (107.0)

C における sizeof(t) の値を返します。

...の場合、t が to_ptr というインスタンスメソッドを持っている
ならば t.size を返します。

それ以外の場合は Pointer[t].size を返します。

@param t サイズを計算する対象
@raise Fiddle::DLError t として文字列を渡し、それが表している...
<< < ... 2 3 4 >>