原始型別

電腦科學中,原始型別(英語:Primitive type)有別於複合型別,是由程式語言提供的資料類型,作為建立基礎。根據語言及其實作,在電腦的記憶體中,原始型別可能沒有與物件一對一的對應。

Primitive type也有稱作內建型別基礎型別或者基本型別

概覽

原始型別的實際範圍,取決於所使用的特定程式語言。例如,在C語言中,字串是一個複合型別,不過在後來的Basic中,字串是原始型別。

典型的原始型別包含:

  • 字元characterchar),依字元集又分為SBCS、DBCS、MBCS這三大類;
  • 整數integerintshortlongbyte),其有各種精度,依是否可表示負數的數值又再各自區分有號數與無號數;
  • 浮點數floatdoublerealdouble precision);
  • 定點數fixed),其有各種精度,以及所選的數量級
  • 布林型別有兩值。
  • 參照(又稱作指標handle),它是一個較小的值,指向其它可能大得多的物件,其所在的記憶體位址。

更多更複雜的原始型別:

通常預期以基於原始型別的運算,構成較快速的語言。整數加法,例如,可以執行單一的機器指令,且部分處理器提供特定的指令,以單一指令處理一系列的字元。尤其是,C語言標準中提到,「一個『簡單』的int物件,具有原始的大小,其大小以執行環境的架構所暗示。」意即在32位元架構下的int,可能就是32位元的長度。

大部分語言不允許以程式修改原始型別的行為或效能。例外的有Smalltalk,其允許在程式內部擴展原始型別。可以在其上執行加入的運算,甚至重新定義內建的運算。