這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
1 C++
C++定義的基本類型包括算術類型和void類型。算術類型分為整型(包括字元和布爾型)和浮點型,如下表所示:
C++11新增了char16_t,char32_t(最小分別為16、32位的Unicode字元型),long long(最小為64位的長整形)3種內建類型。
對於32位平台,int類型和long類型通常字長是相同的,占32位。
可以用以下語句來測試各種類型所佔位元組數:
std::cout <<sizeof(long) <<std::endl;
2 Java
Java基本類型所佔儲存空間的大小是不變的,非引用,儲存在棧了。
Java所有數實值型別都有加號或減號,沒有無符號的數實值型別。
3 Python
在 Python中,每個值都有一種資料類型,但並不需要聲明變數的資料類型。Python根據每個變數的初始賦值情況分析其類型,並在內部對其進行跟蹤。
Python有多種內建資料類型。以下是比較重要的一些:
1) Booleans[布爾型]或為 True[真]或為 False[假]。
2) Numbers[數值型]可以是 Integers[整數](1和 2)、Floats[浮點數](1.1和 1.2)、Fractions[分數](1/2和 2/3);甚至是 Complex Number[複數]。
3) Strings[字串型]是 Unicode字元序列,例如:一份 HTML文檔。
4) Bytes[位元組]和Byte Arrays[位元組數組],例如:一份 JPEG 影像檔。
5) Lists[列表]是值的有序序列。
6) Tuples[元組]是有序而不可變的值序列。
7) Sets[集合]是裝滿無序值的包裹。
8) Dictionaries[字典]是索引值對的無序包裹。
4 Go
Go語言的基本類型包括:
1) bool(true, false)
2) 數字類型(有符號/無符號)
3) string(內建“UTF-8”支援)
4) array([n]<type>)
5) 切片slice(array[i:j])
6) 字典map(map[<from_type>]<to_type>)
7) 通道chan
8) error
Go語言整數類型和範圍如下表所示:
浮點類型如下表所示:
感謝閱讀!
參考資料:
1 C++ Primer (5th Edition)
2 Thinking in Java (4th Edition)
3 Learning Python (5th Edition)
4 Dive into Python 3 http://woodpecker.org.cn/diveintopython3/native-datatypes.html
5 Programming in Go