模組 Stdlib.Int32

module Int32: Int32

val zero : int32

32 位元整數 0。

val one : int32

32 位元整數 1。

val minus_one : int32

32 位元整數 -1。

val neg : int32 -> int32

一元負號。

val add : int32 -> int32 -> int32

加法。

val sub : int32 -> int32 -> int32

減法。

val mul : int32 -> int32 -> int32

乘法。

val div : int32 -> int32 -> int32

整數除法。此除法將其參數的實際商數向零捨入,如 (/) 所指定。

val unsigned_div : int32 -> int32 -> int32

Int32.div 相同,但參數和結果被解釋為無符號 32 位元整數。

val rem : int32 -> int32 -> int32

整數餘數。如果 y 不為零,則 Int32.rem x y 的結果滿足以下屬性:x = Int32.add (Int32.mul (Int32.div x y) y) (Int32.rem x y)。如果 y = 0,則 Int32.rem x y 會拋出 Division_by_zero 異常。

val unsigned_rem : int32 -> int32 -> int32

Int32.rem 相同,但參數和結果被解釋為無符號 32 位元整數。

val succ : int32 -> int32

後繼者。Int32.succ xInt32.add x Int32.one

val pred : int32 -> int32

前導者。Int32.pred xInt32.sub x Int32.one

val abs : int32 -> int32

abs xx 的絕對值。對於 min_int,其值仍為 min_int 本身,因此保持負數。

val max_int : int32

可表示的最大 32 位元整數,231 - 1。

val min_int : int32

可表示的最小 32 位元整數,-231

val logand : int32 -> int32 -> int32

按位元邏輯與。

val logor : int32 -> int32 -> int32

按位元邏輯或。

val logxor : int32 -> int32 -> int32

按位元邏輯互斥或。

val lognot : int32 -> int32

按位元邏輯否定。

val shift_left : int32 -> int -> int32

Int32.shift_left x yx 向左位移 y 位元。如果 y < 0y >= 32,則結果未指定。

val shift_right : int32 -> int -> int32

Int32.shift_right x yx 向右位移 y 位元。這是一個算術位移:x 的符號位元會被複製並插入到空出的位元中。如果 y < 0y >= 32,則結果未指定。

val shift_right_logical : int32 -> int -> int32

Int32.shift_right_logical x yx 向右位移 y 位元。這是一個邏輯位移:無論 x 的符號如何,都會在空出的位元中插入零。如果 y < 0y >= 32,則結果未指定。

val of_int : int -> int32

將給定的整數 (類型為 int) 轉換為 32 位元整數 (類型為 int32)。在 64 位元平台上,參數會取模 232

val to_int : int32 -> int

將給定的 32 位元整數 (類型為 int32) 轉換為整數 (類型為 int)。在 32 位元平台上,32 位元整數會取模 231,也就是說,轉換過程中會遺失高位元。在 64 位元平台上,轉換是精確的。

val unsigned_to_int : int32 -> int option

Int32.to_int 相同,但將參數解釋為無符號整數。如果參數的無符號值無法放入 int 中,則返回 None

val of_float : float -> int32

將給定的浮點數轉換為 32 位元整數,並捨棄小數部分 (向 0 截斷)。如果截斷的浮點數超出範圍 [Int32.min_int, Int32.max_int],則不會拋出例外,並且會返回一個未指定的、與平台相關的整數。

val to_float : int32 -> float

將給定的 32 位元整數轉換為浮點數。

val of_string : string -> int32

將給定的字串轉換為 32 位元整數。字串會以十進制讀取 (預設情況下,或如果字串以 0u 開頭),或如果字串分別以 0x0o0b 開頭,則會以十六進制、八進制或二進制讀取。

0u 前綴將輸入讀取為範圍在 [0, 2*Int32.max_int+1] 內的無符號整數。如果輸入超過 Int32.max_int,則會轉換為帶符號的整數 Int32.min_int + input - Int32.max_int - 1

_(底線)字元可以出現在字串中的任何位置,並且會被忽略。

val of_string_opt : string -> int32 option

of_string 相同,但返回 None 而不是拋出異常。

val to_string : int32 -> string

以帶符號的十進制形式返回其參數的字串表示。

val bits_of_float : float -> int32

根據 IEEE 754 浮點數「單精度格式」位元佈局,返回給定浮點數的內部表示。結果的第 31 位元表示浮點數的符號;第 30 到 23 位元表示 (有偏差的) 指數;第 22 到 0 位元表示尾數。

val float_of_bits : int32 -> float

返回其內部表示 (根據 IEEE 754 浮點數「單精度格式」位元佈局) 為給定 int32 的浮點數。

type t = int32 

32 位元整數類型的別名。

val compare : t -> t -> int

32 位元整數的比較函式,具有與 compare 相同的規範。連同類型 t,此函式 compare 允許將模組 Int32 作為參數傳遞給函子 Set.MakeMap.Make

val unsigned_compare : t -> t -> int

Int32.compare 相同,但參數被解釋為無符號 32 位元整數。

val equal : t -> t -> bool

int32 的相等函式。

val min : t -> t -> t

返回兩個參數中較小的一個。

val max : t -> t -> t

返回兩個參數中較大的一個。

val seeded_hash : int -> t -> int

用於 32 位元整數的種子雜湊函式,具有與 Hashtbl.seeded_hash 相同的輸出值。此函式允許將此模組作為參數傳遞給函子 Hashtbl.MakeSeeded

val hash : t -> int

用於 32 位元整數的未種子雜湊函式,具有與 Hashtbl.hash 相同的輸出值。此函式允許將此模組作為參數傳遞給函子 Hashtbl.Make