Constantes

Las constantes son elementos de datos literales escritos en un programa de idioma del usuario. Según los distintos tipos de datos, también hay diferentes tipos de constantes:

Constantes de caracteres

Una constante de caracteres consta de un solo carácter o una secuencia de escape entre comillas simples, como

'a'
'='
'\n'

El tipo de constante de carácter es char.

Constantes de enteros

Dependiendo del primer carácter (y posiblemente del segundo), se supone que una constante de entero se expresa en diferentes valores base:

primero segundo constante interpretada como
0 1-7 octal (base 8)
0 x,X hexadecimal (base 16)
1-9 decimal (base 10)

El tipo de una constante de entero es int.

Ejemplos:

16 decimal
020 octal
0x10 hexadecimal

Constantes reales

Una constante real sigue el patrón general

[-]int.frac[e|E[±]exp]

que representa

Puede omitir el entero decimal o la fracción decimal (pero no ambos). Puede omitir el punto decimal o la letra e o E y el exponente de entero con signo (pero no ambos).

El tipo de constante real es real.

Ejemplos:

Constante Valor
23,45e6 23,45 x 10^6
,0 0,0
0, 0,0
1, 1,0
-1,23 -1,23
2e-5 2,0 x 10^-5
3E+10 3,0 x 10^10
,09E34 0,09 x 10^34

Constantes de cadena

Una constante de cadena consta de una secuencia de caracteres o secuencias de escape entre comillas dobles, como

"Hello world\n"

El tipo de una constante de cadena es string.

Las constantes de cadena pueden tener cualquier longitud (siempre que haya suficiente memoria libre disponible). Las constantes de cadena se pueden concatenar simplemente escribiendo junto a otras para formar cadenas de caracteres más grandes:

string s = "Hello" " world\n";

También es posible extender una constante de cadena sobre más de una línea mediante el escape del carácter de nueva línea con una barra invertida (\):

string s = "Hello \
world\n";

Secuencias de escape

Una secuencia de escape consta de una barra invertida (\), seguida de uno o más caracteres especiales:

Secuencia Valor
\a timbre audible
\b retroceso
\f salto de página
\n línea nueva
\r retorno de carro
\t pestaña horizontal
\v pestaña vertical
\\ barra diagonal inversa
\' comilla simple
\" comillas dobles
\O O = hasta 3 dígitos octales
\xH H = hasta 2 dígitos hexadecimales

Cualquier carácter que siga a la barra invertida inicial que no se mencione en esta lista se tratará como ese carácter (sin la barra invertida).

Las secuencias de escape se pueden utilizar en constantes de caracteres y constantes de cadena.

Ejemplos:

'\n'
"A tab\tinside a text\n"
"Ring the bell\a\n"