Constante (programación): concepto, tipos, ejemplos
Una constante, en programación, se define como un valor fijo que un programa no puede modificar mientras se está ejecutando. A estos valores fijos también se les conoce como literales. Se trata como una variable común, excepto que su valor no puede alterarse después que se haya definido.
Las constantes pueden tener cualquiera de los tipos de datos básicos, como una constante entera, flotante, caracter o cadena de caracteres. Es igual a una variable en su declaración y en la capacidad de poder mirar el valor que tiene almacenado dentro de ella. Sin embargo, no se puede cambiar su valor mientras el programa está en ejecución.
Si se trata de cambiar el valor de una constante aparecerá un error. Por tanto, es muy útil para valores que cambien rara vez o que no cambien, como el IVA, Pi, etc.
Al usar una constante, no se corre el riesgo que pueda cambiarse accidentalmente su valor. Por ejemplo, no se querría que el valor de Pi se cambiara accidentalmente a 4, ya que todos los cálculos donde intervenga Pi saldrían mal.
Índice del artículo
Concepto
En matemáticas, una constante es un número o símbolo específico al que se le asigna un valor fijo. Por ejemplo, en la ecuación: y = 3z–2, “y” y “z” son variables, mientras que los números 3 y 2 son constantes.
Las constantes se utilizan en la programación para almacenar valores fijos. Resultan de interés para definir valores que se utilizarán varias veces dentro de un programa. Por ejemplo, a continuación, “mini” y “maxi” se declaran como constantes.
– const int mini=20.
– const int maxi=200.
Gracias el uso de las constantes, se pueden cambiar simultáneamente varias instancias de un valor. Por ejemplo, al modificar el valor asignado a maxi en el ejemplo, ese valor se cambiará siempre que se haga referencia a maxi.
Si se utilizara el número 200 en lugar de maxi, el programador tendría que modificar cada instancia individual de “200”. Por tanto, se considera una buena práctica de programación usar constantes cada vez que se usa un valor fijo varias veces.
– Constantes y variables
Las constantes brindan la garantía que el código no podrá cambiar su valor. Esto no es muy importante para un proyecto pequeño, pero importa bastante en un proyecto de gran tamaño con múltiples componentes escritos por varios programadores.
Las constantes también proporcionan un indicio al compilador para la optimización. Como el compilador sabe que ese valor no puede cambiar, no necesita cargar el valor a la memoria, optimizando el código para que funcione solo para el valor de la constante.
Una variable, como lo dice su nombre, varía eventualmente. Sin embargo, si no varía no pasa nada. Como la legibilidad también es importante, siempre que sea posible se debe usar explícitamente una constante y dejar las variables para los valores que realmente puedan cambiar.
– Constantes y valores literales
Código más legible
Seguramente se sabrá lo que significa el valor 3.14. Sin embargo, no todos sabrán que 3.05 sea una tasa de impuesto en un estado. Por tanto, no todos los que hagan el mantenimiento futuro al código lo sabrán.
Ahorra trabajo al hacer un cambio
Si la tasa de impuestos cambia en el futuro, será molesto tener que cambiar cada valor de 3.05 a 3.16. Por tanto, se minimizan los cambios al hacer solo un cambio en la constante.
Tipos de constantes
– Booleano
El tipo de datos booleano solo puede tener uno de los dos valores siguientes: 0 (Falso) y 1 (Verdadero).
– Entero
Un literal entero es una secuencia de dígitos. Puede ser una constante decimal, octal o hexadecimal. Un prefijo especifica la base o raíz: 0x o 0X para hexadecimal, 0 para octal y nada para decimal.
Un literal entero también puede tener un sufijo que sea una combinación de U y L, para “unsigned” y “long”, respectivamente. El sufijo puede estar en mayúscula o minúscula, y puede estar en cualquier orden.
– Punto flotante
Una constante de punto flotante es un número que está compuesto por una parte entera, un punto decimal y una parte fraccionaria. Estas constantes se pueden mostrar tanto en forma decimal como exponencial.
Al representar la forma decimal se debe incluir el punto decimal, el exponente o ambos. Cuando se representa la forma exponencial se debe incluir la parte entera, la parte fraccional o ambas. El exponente con su signo viene introducido por una e o E.
– Caracter
Un literal de tipo caracter puede ser un caracter (por ejemplo, ‘k’), una secuencia de escape (por ejemplo, ‘/t’) o un caracter universal (por ejemplo, ‘/u02C1’).
Este tipo de constante se enmarca entre comillas simples. Por ejemplo, ‘h’ o ‘3’ se pueden almacenar en una constante de tipo char. El tamaño máximo de este tipo de constante es un byte.
Algunos caracteres en C tienen un significado especial cuando vienen precedidos por una barra diagonal inversa. Por ejemplo, línea nueva (/n) o tabulación (/t).
– Cadena de caracteres
Una cadena de caracteres contiene un conjunto de caracteres con las características del tipo caracter. Las constantes de cadena de caracteres están entre comillas dobles “”.
Una línea larga se puede fraccionar en varias líneas usando para ello constantes de cadena de caracteres y separándolas con espacios en blanco. Por ejemplo, las dos formas siguientes son las mismas cadenas de caracteres:
– “Hola, querida”.
– “Hola, “ “qu” “erida”.
– Codificación de constantes
Constantes literales
Es una constante sin nombre que se utiliza para especificar datos. Las constantes literales se codifican como parte de una sentencia. Por ejemplo, en la sentencia a=b+6 se utilizó la constante literal ‘6‘.
Constantes definidas
Se colocan generalmente al comienzo del programa, aunque se pudieran colocar en cualquier lugar. Se definen de la siguiente manera, por ejemplo: #define Año 2019.
El valor de Año se podrá cambiar rápidamente al estar colocado al comienzo del programa, ya que se puede encontrar fácilmente.
Constantes de memoria
Utilizan un calificador de tipo constante para así indicar que los datos no se pueden cambiar. La sintaxis es: const type identificador=valor. Un ejemplo sería: const float PI=3.1415.
Ejemplos de constantes
El siguiente programa muestra las tres formas diferentes de codificar PI como una constante:
Palabra clave “const”
Se puede usar el prefijo “const” para declarar constantes con un tipo de datos específico, de la siguiente manera: const tipo variable=valor. Con el siguiente ejemplo se puede ver con más detalle:
Cuando se compila y ejecuta el código anterior, se produce el siguiente resultado: valor del área: 50.
Se debe tener en cuenta que es una buena práctica de programación definir siempre las constantes en Mayúsculas.
Referencias
- Tutorials Point (2020). C – Constants and Literals. Tomado de: tutorialspoint.com.
- Madhavi Pingili (2019). Constant. The Tutor 4U. Tomado de: thetutor4u.com.
- Stack Overflow (2020). Why use constants in programming? Tomado de: stackoverflow.com.
- Wikibooks (2020). Fundamentals of Programming: Constant Definitions. Tomado de: en.wikibooks.org.
- Tech Terms (2020). Constant. Tomado de: techterms.com.