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
有疑问加站长微信联系(非本文作者)