跳轉到內容

ROOT/資料處理/ROOT資料型別

來自華夏公益教科書,開放的書籍,開放的世界

您可能已經使用了一些標準的資料型別,例如intfloatdouble等。但是,儘管這些名稱在普遍使用,但這些型別實際的含義並沒有統一的共識。事實上,它們的實際儲存方式取決於您的機器和編譯器。例如,一些較舊的標準會將int型別分配為16 位,而較新的環境則會使用32 位。對於某些應用來說,這可能是可以接受的,但對於資料分析來說,這絕對不行。當開始處理海量資料時,應該關注經濟的記憶體使用。這意味著選擇一個足夠大但不會更大的資料型別,以在所需的精度範圍內容納目標值。為了確保這一點,程式設計師必須確信所選資料型別在程式碼編譯的任何機器上都是一樣的。

為了確保這一點,ROOT 中定義了一系列與機器無關的資料型別,這些型別始終具有相同的定義。強烈建議在使用 ROOT 進行程式設計時使用這些型別。

型別 描述 大小
Bool_t 邏輯值 (0…false, 1…true) ?
Char_t 帶符號整數 1 位元組
UChar_t 無符號整數 1 位元組
Short_t 帶符號整數 2 位元組
UShort_t 無符號整數 2 位元組
Int_t 帶符號整數 4 位元組
UInt_t 無符號整數 4 位元組
Long_t 帶符號整數 8 位元組
ULong_t 無符號整數 8 位元組
Float_t 浮點數 4 位元組
Double_t 浮點數 8 位元組

表 1: ROOT 中定義的一些與機器無關的資料型別。有關所有型別的資訊,請參閱參考文獻 [1]

華夏公益教科書