Primitive type

From Free net encyclopedia

(Redirected from Integral type)

In computer science, primitive types, as distinct from composite types - are datatypes provided by a programming language as basic building blocks. Depending on the language and its implementation, primitive types may or may not have a one-to-one correspondence with objects in the computer's memory.

Primitive types are also known as built-in types or basic types.

The actual range of primitive types that is available is dependent upon the specific programming language that is being used. For example, in C, strings are a composite datatype, whereas in modern dialects of Basic they are a primitive datatype.

Typical primitive types may include:

  • character (character, char);
  • Integer (integer, int, short, long) with a variety of precisions;
  • floating-point number (float, double, real, double precision);
  • Fixed-point (fixed) with a variety of precisions and a programmer-selected scale.
  • boolean having the values true and false.
  • datatype (string), a sequence of characters, which can be of zero length – containing no characters – if desired);
  • reference (also called a "pointer" or "handle"), a small value referring to another object, possibly a much larger one.

More sophisticated types which can be primitive include:

One usually expects operations on primitive types to be the fastest language contructs there are. Integer addition, for example, can be performed as a single machine instruction, and some processors offer specific instructions to process sequences of characters with a single instruction. In particular, the C standard mentions that "a ``plain'' int object has the natural size suggested by the architecture of the execution environment". This means that int is likely to be 32 bits long on a 32-bit architecture.

Most languages do not allow the behaviour or capabilities of primitive types to be modified by programs. Exceptions include Smalltalk, which permits primitive datatypes to be extended within a program, adding to the operations that can be performed on them or even redefining the built-in operations.it:Operazione primitiva ru:Примитивный тип