A value is a discrete quantity of data. The members of a type are the values of that type. Computer languages vary in their implementation of primitive value types, but some examples would be null, undefined, true/false, and numeric values, like the following: 1, 3.1459, "Chuck", 'D', true.
A data type or simply type is a classification of data which tells the compiler or interpreter how the programmer intends to use the data. Data types specify the type of data that you work with in a program. The data type defines the size of memory needed to store data and the kinds of operations that can be performed on the data. Most computer programming languages support various types of data, for example: real, integer, string, or boolean. A data type provides a set of values from which an expression (i.e. variable, function...) may take its values. The type defines the operations that can be done on the data, the meaning of the data, and the way values of that type can be stored. Data types are grouped into value types and reference types. Value data types store the value on the stack, whereas reference data types write the memory address on the stack which
points to where the data value begins in dynamic memory (the heap).
Modern-day programming languages have basic data types built-in to them; these are generally referred to as their primitive data types. Meaning, the programmer does not have to write the code that defines the data type, its allowed operations, etc. Usually a simple statement like:
is all that is needed to declare an integer variable to the compiler or interpreter using any modern-day programming language.
Data Types By Programming Language
Click on the links below to view the specific data types for the designated programming language.
Data types in C++ are mainly divided into two types:
Primitive Data Types: These data types are built-in or predefined data types and can be used directly by the user to declare variables. example: int, char , float, bool etc. Primitive data types available in C++ are:
- Floating Point
- Double Floating Point
- Valueless or Void
- Wide Character
Abstract or user defined data type: These data types are defined by user itself. Like, defining a class in C++ or a structure.
Most of the time, a primitive value is represented directly at the lowest level of the language implementation.
All primitives are immutable, i.e., they cannot be altered. It is important not to confuse a primitive itself with a variable assigned a primitive value. The variable may be reassigned a new value, but the existing value can not be changed in the ways that objects, arrays, and functions can be altered.
Python has four primitive data types:
C# provides several built-in data types by way of the .NET framework which can be used in your programs. You can also define new data types by defining your own data structure, such as a
class or a
In this lesson we focus on some of the most commonly used data types.
Figure 2: C# Data Types
||Range Of Values
||0 to 255
||U+0000 to U+ffff (Unicode characters)
||-32,768 to 32,767
||-2,147,483,648 to 2,147,483,647
||-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
||±1.5 X 10-45 to ±3.4 X 1038
||±5.0e-324 to ±1.7e308
||True or False
||zero or more unicode characters
All of the data types in the table above are value types except for
string, which is a reference type. The variables which are based on value types directly contain the value on the stack. Data types which are of type reference store a reference on the
stack which points to a memory address on the
heap where the value is actually stored. This will make more sense after you learn about
heaps, and other data structures later on in this course. For now, just remember that the
string type is a reference type and NOT a value type.
The MSDN Web site has a more comprehensive table showing the C# integral data types. which is a subset of the simple types. You might also want to review Types for a more comprehensive overview of C# types.
⇑ Table of Contents