数据类型

✍ dations ◷ 2025-12-04 09:42:18 #数据类型

在程序设计的类型系统中,数据类型(英语:Data type),又称数据型态、数据型别,是用来约束数据的解释。在编程语言中,常见的数据类型包括原始类型(如:整数、浮点数或字符)、多元组、记录单元、代数数据类型、抽象数据类型、参考类型、类以及函数类型。数据类型描述了数值的表示法、解释和结构,并以算法操作,或是对象在存储器中的存储区,或者其它存储设备。

所有在电脑中,基于数字电子学的底层数据,都是以比特(0 或 1)表示。其中数据的最小的定址单位,称为字节(通常是八比特,以八个比特为一组)。机器代码指令处理的单位,称作字长(至 2007 年止,一般为 32 或 64 比特)大部分对字长的指令解译,主要以二进制为主,如一个 32 比特的字长,可以表示从 0 至 2 32 1 {\displaystyle 2^{32}-1} 的无符号整数值,或者表示从 2 31 {\displaystyle -2^{31}} 2 31 1 {\displaystyle 2^{31}-1} 的有符号整数值。由于有了二的补码,机器语言和机器大多不需要区分无符号和有符号数据类型。存在着特殊的算术指令,对字长中的比特使用不同的解释,以此作为浮点数。

编程语言提供若干原始数据类型,以作为程序以及专用化复合类型的创建基础。典型的原始数据类型包含各种整数、浮点数以及字符串类型。尽管这些创建基础:数组、记录单元以及参考所联系的数据,可能未包括在基本类型,但仍可将其视为若干原始值的聚集。

这部分可包括以下内容(最终仍取决于编程语言):

每一个数据类型都有一个数值上的最大和最小值,称作数值范围。了解数值的范围是很重要的,尤其是当使用较小的类型时,你就只能存储范围之内的数值。试图存储一个超出其范围的数值,可能会导致编译或运行错误,或者不正确的计算结果(因为被截断)。

一个变量的范围,是基于用以保存数值的字节数目,而且整数数据类型通常能够存储 2 n {\displaystyle 2^{n}} 数值(此处的 n {\displaystyle n} 是指比特)。对于其它的数据类型(例如,浮点数),其数值范围更为复杂,且几乎取决于所使用的存储方法。还有一些不用完全部的比特,例如,布尔只需一个比特,且表示一个二进制值(虽然在实践中,通常会用完剩余的 7 个比特)。某些编程语言也允许反向决定,程序设计者定义解决问题所需的范围和精度,然后由编译器自动选择合适的整数或浮点数。

下表列出常见的数据类型,及其数值范围:

相关

  • 北京大学第一医院坐标:39°55′54″N 116°22′49″E / 39.931765°N 116.380416°E / 39.931765; 116.380416 北京大学第一医院,简称“北大医院”,创立于1915年,是中国最早建立的临床医学院。现
  • 库仑库仑(英语:Coulomb)是电荷量的单位,符号为 C {\displaystyle \mathrm {C} } 。若导线中载有1安培的稳定电流,则
  • 聿部,为汉字索引中的部首之一,康熙字典214个部首中的第一百二十九个(六划的则为第十二个)。就繁体和简体中文中,聿部归于六划部首。聿部以上、下方为部字。且无其他部首可用者将
  • 新闻集团新闻集团(英语:News Corp)是一家位于美国的出版业跨国公司,是由前新闻集团的报纸和出版业务分拆而成。前新闻集团分拆为新闻集团和21世纪福斯公司——由前新闻集团娱乐及媒体事
  • 苏珊·桑塔格苏珊·桑塔格(英语:Susan Sontag,1933年1月16日-2004年12月28日)生卒于纽约,美国著名的作家和评论家、著名的女权主义者,她被认为是近代西方最引人注目、最有争议性的女作家及评论
  • 希腊化时代希腊化时代(英语:Hellenistic period)在亚历山大征服波斯帝国之后不久开始。通常起始点视为亚历山大大帝于公元前323年逝世开始,并结束于罗马共和国在前146年征服希腊本土,或前30
  • 弗洛伦斯·格里菲斯-乔伊娜弗洛伦斯·格里菲斯-乔伊娜(英语:Florence Griffith-Joyner,1959年12月21日-1998年9月21日),美国女子田径运动员,昵称“Flo-Jo”、“花蝴蝶”。格里菲斯1959年出生于洛杉矶,原名多洛
  • 澳大利亚地理莫森峰 (全国,2,745米)澳大利亚位于南半球,土地面积7,686,850平方千米,是世界最小的大陆,也是世界面积第六大的国家。澳大利亚四面环海,拥有长达25,760千米的海岸线和面积达8,148,2
  • 超氧酸超氧化氢自由基,也称作氧化羟基自由基或超氧酸,是由超氧离子质子化得到的,化学式为HO2。超氧化氢可以通过向超氧离子转移一个质子来制备。超氧离子(O2−)和超氧化氢自由基在水溶
  • 西内格罗省西内格罗省(英语:Negros Occidental)是菲律宾西米沙鄢的省份之一,首府为巴科洛德,位于内格罗斯岛西北部,东南部与东内格罗斯省接壤,西内格罗省的食糖产量占全国的一半以上。