原始类型

科技工作者之家 2020-11-17

在计算机科学中,原始类型(英语:Primitive type)有别于复合类型,是由编程语言提供的数据类型,作为创建基础。根据语言及其实现,在电脑的存储器中,原始类型可能没有与对象一对一的对应。

简介在计算机科学中,原始类型(英语:Primitive type)有别于复合类型,是由编程语言提供的数据类型,作为创建基础。根据语言及其实现,在电脑的存储器中,原始类型可能没有与对象一对一的对应。

Primitive type也有称作内置类型基础类型或者基本类型。1

概览原始类型的实际范围,取决于所使用的特定编程语言。例如,在C语言中,字符串是一个复合类型,不过在后来的Basic中,字符串是原始类型。

典型的原始类型包含:

字符(character、char),依字符集又分为SBCS、DBCS、MBCS这三大类;

整数(integer、int、short、long、byte),其有各种精度,依是否可表示负数的数值又再各自区分有号数与无号数;

浮点数(float、double、real、double precision);

定点数(fixed),其有各种精度,以及所选的数量级。

布尔类型有两值。

引用(又称作指针或handle),它是一个较小的值,指向其它可能大得多的对象,其所在的存储器地址。

更多更复杂的原始类型:

多元组,出现于ML、Python

链表,出现于Lisp

复数,出现于Fortran、C(C99)、Python

有理数,出现于Lisp

一等函数、闭包、续延,出现于函数式编程语言,如Lisp和ML

通常预期以基于原始类型的运算,构成较快速的语言。整数加法,例如,可以运行单一的机器指令,且部分处理器提供特定的指令,以单一指令处理一系列的字符。尤其是,C语言标准中提到,“一个‘简单’的int对象,具有原始的大小,其大小以运行环境的架构所暗示。”意即在32位架构下的int,可能就是32位的长度。

大部分语言不允许以程序修改原始类型的行为或性能。例外的有Smalltalk,其允许在程序内部扩展原始类型。可以在其上运行加入的运算,甚至重新定义内置的运算。

本词条内容贡献者为:

王沛 - 副教授、副研究员 - 中国科学院工程热物理研究所

科技工作者之家

科技工作者之家APP是专注科技人才,知识分享与人才交流的服务平台。