36件ヒット
[1-36件を表示]
(0.009秒)
別のキーワード
検索結果
-
String
# unpack(template) -> Array (61.0) -
Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。
...@param template pack テンプレート文字列
@return オブジェクトの配列
以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます......!<: little endian signed long
//}
=== 各テンプレート文字の説明
説明中、Array#pack と String#unpack で違いのあるものは `/' で区切って
「Array#pack の説明 / String#unpack の説明」としています。
: a
ASCII文字列(ヌル文字を詰める/後続する......x80?"
[0.0/0.0].pack("f") # => "\x00\x00\xC0\xFF" # NaN
[1.0/0.0].pack("f") # => "\x00\x00\x80\x7F" # +Infinity
[-1.0/0.0].pack("f") # => "\x00\x00\x80\xFF" # -Infinity
//}
SPARC64 (IEEE754 単精度 ビッグエンディアン):
//emlist[][ruby]{
[1.0].pack("f") # => "?\x80......m template pack テンプレート文字列
@return オブジェクトの配列
以下にあげるものは、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることがで......x80?"
[0.0/0.0].pack("f") # => "\x00\x00\xC0\x7F" # NaN
[1.0/0.0].pack("f") # => "\x00\x00\x80\x7F" # +Infinity
[-1.0/0.0].pack("f") # => "\x00\x00\x80\xFF" # -Infinity
//}
SPARC64 (IEEE754 単精度 ビッグエンディアン):
//emlist[][ruby]{
[1.0].pack("f") # => "?\x80... -
String
# %(args) -> String (13.0) -
printf と同じ規則に従って args をフォーマットします。
...sprintf("%c", 'a') #=> "a"
//}
フラグ `-' と幅 の指定だけが意味を持ちます。
: s
文字列を出力します。
引数が String オブジェクトでなければ to_s メソッドにより文字列化
したものを引数として扱います。
: p
Object#inspect の......、Float::INFINITY、Float::NAN はそれぞれ 'Inf'、'NaN' になります。詳しくは 40650 を参照してください。
//emlist[][ruby]{
p sprintf("%a", -0.0) # => "-0x0p+0"
p sprintf("%a", 729.0/10) # => "0x1.239999999999ap+6"
p sprintf("%a", Float::INFINITY) # => "Inf... -
String
# to _ f -> Float (13.0) -
文字列を 10 進数表現と解釈して、浮動小数点数 Float に変換します。
...の Float が有限の値を取れないときは、Float::INFINITY を用います。
このとき、全ての警告を有効にすると、警告が表示されます。
//emlist[][ruby]{
#!ruby -W2
p ("10" * 1000).to_f # => Infinity
# warning: Float 10101010101010101010... out of range
//}......なお、このメソッドとは逆に、数値を文字列に変換するには
Kernel.#sprintf, String#%, Integer#to_s
を使用します。
@see String#hex, String#oct, String#to_i,
Kernel.#Integer, Kernel.#Float...