3. Constantes

En C++ se pueden definir constantes de dos formas, ambas válidas para nosotros. La primera es por medio del comando #define nombre_constante valor y la segunda es usando la palabra clave const, veamos ahora cada una de estas formas en detalle.

La instrucción #define nos permite declarar constantes (y algunas cosas más) de una manera rápida y sencilla. Hay que tener en cuenta que al declarar constantes con #define debemos hacerlo despues de los #include para importar librerías pero antes de declarar nuestras funciones y demás. NO VA EL TIPO DE DATO.

La instrucción const nos permite declarar constantes de una manera más adecuada y acorde. Las constantes declaradas con const poseen un tipo de dato asociado (como debería ser siempre) y se declaran al interior de nuestro código como un tipo cualquiera. VA EL TIPO DE DATO.

Las constantes son muy similares a las variables, con la diferencia que éstas solo pueden tomar un valor en el momento de la declaración, luego cualquier intento de modificación será tomado como un error por parte del compilador. Las constantes NO cambian de valor en un programa, por eso son constante.
Por ejemplo:

La salida sería :

Se pide al alumnos observar y razonar sobre las distintas formas de declarar constantes en el código anterior.

Constantes "long"

Para trabajar con valores constantes "long" debemos usar el sufijo "L". Esto resulta conveniente, sobre todo, al utilizar las constantes en expresiones condicionales y, por coherencia, también en expresiones de asignación.

Esta sentencia hará que el compilador emita un error ya que no puede usar un tamaño mayor sin una indicación explícita.
Hay casos en los que los tipos "long" e "int" tienen el mismo tamaño, en ese caso no se producirá error, pero no podemos predecir que nuestro programa se compilará en un tipo concreto de compilador o plataforma.

Constantes "long long"

Para trabajar con valores constantes "long long" debemos usar el  prefijo long long , sobre todo cuando esas constantes aparecen en expresiones condicionales o de asignación.

Constantes "unsigned"

Del mismo modo, cuando trabajamos con valores constantes "unsigned" debemos usar el prefijo unsigned en la declacración" para las mismas situaciones que hemos indicado 

Constantes en punto flotante

En este último caso, cuando la constante de punto flotante se pueda confundir con un entero, debemos añadir el ".0".Para expresar constantes en punto flotante también podemos usar notación exponencial, por ejemplo:


El formato exponencial consiste en un número, llamado mantisa, que puede ser entero o con decimales, seguido de una letra 'e' o 'E' y por último, otro número, en este caso un número entero, que es el exponente de una potencia de base 10.

Los valores anteriores equivalen a:

  • x = 10 x 104 = 100000
  • y = 4,12 x 102 = 412
  • pi = 3.141592 x 100 = 3.141592

La salida sería:

Constantes "double"

Constantes "long double"


Constantes "char"

Las constantes de tipo "char" se representan entre comillas sencillas o simples , por ejemplo 'a', '8', 'F'.

Al igual que las variables, las constantes dependiendo del tipo van a usar mas o menos espacio en memoria.

La salida de este código sería: