種類
- インスタンスメソッド (108)
- モジュール関数 (44)
- 特異メソッド (22)
ライブラリ
- ビルトイン (174)
クラス
- Array (19)
- Bignum (6)
-
File
:: Stat (33) - Fixnum (6)
- Integer (22)
- String (22)
- Struct (11)
- TracePoint (11)
モジュール
- Kernel (44)
検索結果
先頭5件
-
Kernel
. # printf(format , *arg) -> nil (26178.0) -
C 言語の printf と同じように、format に従い引数を文字列に変 換して port に出力します。
...C 言語の printf と同じように、format に従い引数を文字列に変
換して port に出力します。
port を省略した場合は標準出力 $stdout に出力します。
引数を 1 つも指定しなければ何もしません。
Ruby における format 文字列の拡張......については
Kernel.#sprintfの項を参照してください。
@param port 出力先になるIO のサブクラスのインスタンスです。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@raise ArgumentError port を指定したの......][ruby]{
printf("calculate%3s%-6s%.15f", 'PI', '...', Math::PI)
#=> calculate PI... 3.141592653589793
printf("%d %04x", 123, 123) #=> "123 007b"
printf("%08b '%4s'", 123, 123) #=> "01111011 ' 123'"
printf("%1$*2$s %2$d %1$s", "hello", 8) #=> " hello 8 hello"
printf("%... -
Kernel
. # printf(port , format , *arg) -> nil (26178.0) -
C 言語の printf と同じように、format に従い引数を文字列に変 換して port に出力します。
...C 言語の printf と同じように、format に従い引数を文字列に変
換して port に出力します。
port を省略した場合は標準出力 $stdout に出力します。
引数を 1 つも指定しなければ何もしません。
Ruby における format 文字列の拡張......については
Kernel.#sprintfの項を参照してください。
@param port 出力先になるIO のサブクラスのインスタンスです。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@raise ArgumentError port を指定したの......][ruby]{
printf("calculate%3s%-6s%.15f", 'PI', '...', Math::PI)
#=> calculate PI... 3.141592653589793
printf("%d %04x", 123, 123) #=> "123 007b"
printf("%08b '%4s'", 123, 123) #=> "01111011 ' 123'"
printf("%1$*2$s %2$d %1$s", "hello", 8) #=> " hello 8 hello"
printf("%... -
Kernel
. # sprintf(format , *arg) -> String (11376.0) -
format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォーマットした文字列を返します。
...の sprintf と同じように解釈し、
引数をフォーマットした文字列を返します。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@see Kernel.#printf,Time#strftime,Date.strptime
=== sprintf フォーマット
Ruby の......sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、sprintf のすべての方言をサ
ポートしていないこと......(%': 3桁区切り)などの違いがあります。
Ruby には整数の大きさに上限がないので、%b, %B, %o, %x, %X
に負の数を与えると (左側に無限に1が続くとみなせるので)
..f のような表示をします。絶対値に符号を付けた形式
で出力する... -
Bignum
# <<(bits) -> Fixnum | Bignum (11224.0) -
シフト演算子。bits だけビットを左にシフトします。
...シフト演算子。bits だけビットを左にシフトします。
@param bits シフトさせるビット数
printf("%#b\n", 0b0101 << 1) #=> 0b1010
p -1 << 1 #=> -2... -
Bignum
# >>(bits) -> Fixnum | Bignum (11224.0) -
シフト演算子。bits だけビットを右にシフトします。
...子。bits だけビットを右にシフトします。
右シフトは、符号ビット(最上位ビット(MSB))が保持されます。
bitsが実数の場合、小数点以下を切り捨てた値でシフトします。
@param bits シフトさせるビット数
printf("%#b\n", 0b0101 >......> 1) #=> 0b10
p -1 >> 1 #=> -1... -
Array
# pack(template , buffer: String . new) -> String (8442.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
...ト文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオ......ます。
buffer オプションはメモリ確保が発生しないことを保証するものでは
ないことに注意してください。
buffer のサイズ(capacity)が足りなければ、packはメモリを確保します。
//emlist[例][ruby]{
['!'].pack('@1a', buffer: 'abc') # => "a......!"
['!'].pack('@5a', buffer: 'abc') # => "abc\u0000\u0000!"
//}
@param template 自身のバイナリとしてパックするためのテンプレートを文字列で指定します。
@param buffer 結果を詰めるバッファとして使う文字列オブジェクトを指定します。... -
Array
# pack(template) -> String (8342.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
...数サイズ非依存 (ネットワークプロトコルなどに適切)
//emlist{
n: big endian unsigned 16bit
N: big endian unsigned 32bit
v: little endian unsigned 16bit
V: little endian unsigned 32bit
//}
: エンディアン依存、整数サイズ依存 (C の構造体などに適切)......int64_t
Q: uint64_t
//}
: エンディアンの強制指定(バイナリ解析などに適切)
//emlist{
S>: big endian unsigned 16bit(nと同じ)
s>: big endian int16_t
s!>: big endian signed short
l<: little endian int32_t
l!<: little endian signed long
//}
=== 各テンプレー......][ruby]{
["abc"].pack("a") # => "a"
["abc"].pack("a*") # => "abc"
["abc"].pack("a4") # => "abc\x00"
"abc\0".unpack("a4") # => ["abc\x00"]
"abc ".unpack("a4") # => ["abc "]
//}
: A
ASCII文字列(スペースを詰める/後続するヌル文字やスペースを削除)
//emlist[][ruby]{......ト文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオ......ます。
buffer オプションはメモリ確保が発生しないことを保証するものでは
ないことに注意してください。
buffer のサイズ(capacity)が足りなければ、packはメモリを確保します。
//emlist[例][ruby]{
['!'].pack('@1a', buffer: 'abc') # => "a......!"
['!'].pack('@5a', buffer: 'abc') # => "abc\u0000\u0000!"
//}
@param template 自身のバイナリとしてパックするためのテンプレートを文字列で指定します。
@param buffer 結果を詰めるバッファとして使う文字列オブジェクトを指定します。... -
String
# unpack(template) -> Array (8342.0) -
Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。
...数サイズ非依存 (ネットワークプロトコルなどに適切)
//emlist{
n: big endian unsigned 16bit
N: big endian unsigned 32bit
v: little endian unsigned 16bit
V: little endian unsigned 32bit
//}
: エンディアン依存、整数サイズ依存 (C の構造体などに適切)......int64_t
Q: uint64_t
//}
: エンディアンの強制指定(バイナリ解析などに適切)
//emlist{
S>: big endian unsigned 16bit(nと同じ)
s>: big endian int16_t
s!>: big endian signed short
l<: little endian int32_t
l!<: little endian signed long
//}
=== 各テンプレー......][ruby]{
["abc"].pack("a") # => "a"
["abc"].pack("a*") # => "abc"
["abc"].pack("a4") # => "abc\x00"
"abc\0".unpack("a4") # => ["abc\x00"]
"abc ".unpack("a4") # => ["abc "]
//}
: A
ASCII文字列(スペースを詰める/後続するヌル文字やスペースを削除)
//emlist[][ruby]{... -
String
# %(args) -> String (8286.0) -
printf と同じ規則に従って args をフォーマットします。
...
printf と同じ規則に従って args をフォーマットします。
args が配列であれば Kernel.#sprintf(self, *args) と同じです。
それ以外の場合は Kernel.#sprintf(self, args) と同じです。
@param args フォーマットする値、もしくはその配列
@retu......rn フォーマットされた文字列
//emlist[例][ruby]{
p "i = %d" % 10 # => "i = 10"
p "i = %x" % 10 # => "i = a"
p "i = %o" % 10 # => "i = 12"
p "i = %#d" % 10 # => "i = 10"
p "i = %#x" % 10 # => "i = 0xa"
p "i = %#o" % 10 # => "i = 012"
p "%d" % 10......"
//}
=== sprintf フォーマット
Ruby の sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、sprintf のすべ... -
Kernel
. # format(format , *arg) -> String (8276.0) -
format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォーマットした文字列を返します。
...の sprintf と同じように解釈し、
引数をフォーマットした文字列を返します。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@see Kernel.#printf,Time#strftime,Date.strptime
=== sprintf フォーマット
Ruby の......sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、sprintf のすべての方言をサ
ポートしていないこと......(%': 3桁区切り)などの違いがあります。
Ruby には整数の大きさに上限がないので、%b, %B, %o, %x, %X
に負の数を与えると (左側に無限に1が続くとみなせるので)
..f のような表示をします。絶対値に符号を付けた形式
で出力する... -
Fixnum
# <<(bits) -> Fixnum | Bignum (8224.0) -
シフト演算子。bits だけビットを左にシフトします。
...シフト演算子。bits だけビットを左にシフトします。
@param bits シフトさせるビット数
printf("%#b\n", 0b0101 << 1) #=> 0b1010
p -1 << 1 #=> -2... -
Fixnum
# >>(bits) -> Fixnum | Bignum (8224.0) -
シフト演算子。bits だけビットを右にシフトします。
...子。bits だけビットを右にシフトします。
右シフトは、符号ビット(最上位ビット(MSB))が保持されます。
bitsが実数の場合、小数点以下を切り捨てた値でシフトします。
@param bits シフトさせるビット数
printf("%#b\n", 0b0101 >......> 1) #=> 0b10
p -1 >> 1 #=> -1... -
Integer
# <<(bits) -> Integer (8124.0) -
シフト演算子。bits だけビットを左にシフトします。
...シフト演算子。bits だけビットを左にシフトします。
@param bits シフトさせるビット数
//emlist[][ruby]{
printf("%#b\n", 0b0101 << 1) # => 0b1010
p -1 << 1 # => -2
//}...