Escalar (informática)

De Wikipedia, la enciclopedia libre
Esta es una versión antigua de esta página, editada a las 22:44 22 oct 2019 por Aosbot (discusión · contribs.). La dirección URL es un enlace permanente a esta versión, que puede ser diferente de la versión actual.

Un escalar es una constante o variable que contiene un dato atómico y unidimensional. En contraposición al concepto de escalar, están los conceptos de array (vector), lista y objeto, que pueden tener almacenado en su estructura más de un valor.[1]

El término escalar en informática viene heredado del Álgebra Lineal y se refiere a un dato atómico y unidimensional, en contraposición al concepto de Vector, que se refiere a un dato multidimensional.[2]

El origen del término 'escalar' data de los años setenta cuando se quería disponer de un significado opuesto a 'vector', para distinguir la idea de procesado de vectores, en el diseño de procesadores computacionales.

Tipos de datos escalares en C#

Categoría Clase Alias Descripción Rango
Enteros Byte byte Un entero sin signo (8-bit) 0 255
SByte sbyte Un entero con signo (num negativo) (8-bit) -128 127
Int16 short Un entero con signo (16-bit) 216
Int32 int Un entero con signo (32-bit) 232
Int64 long Un entero con signo (64-bit) 264
Punto Flotante Single float Un número de punto flotante de simple precisión (32-bit) 232
Double double Un número de punto flotante de doble precisión (64-bit) 264
Decimal decimal Un número decimal de 96-bit 296
Lógicos Boolean bool Un valor booleano (true o false) 1 byte
Caracter Char char Un caracter Unicode (16-bit) 216

Tipos de datos escalares en diferentes lenguajes de programación

Lenguaje de Programación Tipos Escalares
C# byte, sbyte, short, int, long, float, double, decimal, bool, char
C++ int, bool, char, short, long, float, double, etc.
PHP boolean, integer, float o double.

¿Porque el string no es escalar?

Si bien el string se ve como un único valor, no hay que confundirlo con un dato escalar. En realidad es un array de caracteres inmutable y de tamaño fijo.

Como los arrays en c# (al igual que en varios lenguajes) tienen tamaño fijo, cuando "modificamos" un string en realidad se crea un nuevo array, con la longitud necesaria y se pasa la referencia del nuevo objeto. Por eso decimos que es inmutable, no cambia, se genera uno nuevo.

Véase también

Referencias

  1. Kent, Allen; Williams, James G. (2002). Encyclopedia of computer science and technology. New York, NY [USA]: Dekker. pp. 383-384. ISBN 0-8247-2298-1. 
  2. «Scalar». Techopedia.