Guía de seguimiento dinámico de Solaris

constantes

Las constantes de números enteros se pueden escribir en formato decimal (12345), octal (012345) o hexadecimal (0x12345). Las constantes octales (base 8) deben tener un cero como prefijo. Las constantes hexadecimales (base 16) deben tener un prefijo 0x o 0X. Las constantes de números enteros tienen asignado el tipo más pequeño entre int, long y long long que pueda representar su valor. Si el valor es negativo, se utiliza la versión con signo del tipo. Si el valor es positivo y demasiado grande para que se ajuste a la representación de un tipo con signo, se utiliza la representación del tipo sin signo. Puede aplicar cualquiera de los siguientes sufijos a una constante de número entero para especificar explícitamente su tipo de D:

u o U

Versión unsigned del tipo seleccionado por el compilador

l o L

long

ul o UL

unsigned long

ll o LL

long long

ull o ULL

unsigned long long

Las constantes de coma flotante siempre se escriben en sistema decimal y deben contener una coma decimal (12,345), un exponente ( 123e45) o ambos (123,34e-5). Las constantes de coma flotante tienen asignado el tipo double de forma predeterminada. Puede aplicar cualquiera de los siguientes sufijos a una constante de coma flotante para especificar explícitamente su tipo de D:

f o F

float

l o L

long double

Las constantes de caracteres se escriben como un único carácter o secuencia de escape entre un par de comillas simples ('a'). Las constantes de caracteres tienen asignado el tipo int y son equivalentes a una constante de número entero cuyo valor está determinado por el valor de dicho carácter en el juego de caracteres ASCII. Puede consultar ascii(5) para ver una lista de los caracteres y sus valores. También puede utilizar cualquiera de las secuencias de escape especiales que se muestran en la siguiente tabla en la constantes de caracteres. D admite las mismas secuencias de escape que se encuentran en ANSI-C.

Tabla 2–5 Secuencias de escape de caracteres en D

\a

alerta. 

\\

barra invertida 

\b

retroceso 

\?

signo de interrogación 

\f

avance de página 

\'

comillas simples 

\n

nueva línea 

\”

comillas dobles 

\r

retorno de carro 

\0oo

valor octal 0oo

\t

ficha horizontal 

\xhh

valor hexadecimal 0xhh

\v

ficha vertical 

\0

carácter nulo 

Puede incluir más de un especificador de caracteres entre comillas simples para crear números enteros cuyos bytes individuales se inicialicen de acuerdo con los especificadores de caracteres correspondientes. Los bytes se leen de izquierda a derecha desde la constante de caracteres, y se asignan al número entero resultante en el orden correspondiente del endian-ness nativo de su entorno operativo. Se pueden incluir hasta ocho especificadores de caracteres en una única constante de caracteres.

Las constantes de cadenas de cualquier longitud se pueden crear incluyéndolas entre un par de comillas dobles ("hello"). Es posible que una constante de cadena no contenga un carácter de nueva línea literal. Para crear cadenas que contengan líneas nuevas, use la secuencia de escape \n en vez de una línea nueva literal. Las constantes de cadena pueden contener cualquiera de las secuencias de escape de caracteres especiales mostradas anteriormente para las constantes de caracteres. De forma parecida a ANSI-C, las cadenas se representan como matrices de caracteres terminadas por un carácter null (\0) que se agrega implícitamente a cada constante de cadena que declare. Las constantes de cadena se asignan al tipo especial de D string. El compilador de D proporciona un conjunto de funciones especiales para comparar y realizar un seguimiento de las matrices de caracteres declaradas como cadenas, como se describe en el Capítulo 6Cadenas.