Guía de seguimiento dinámico de Solaris

Prefijos de tamaño

Los prefijos de tamaño son necesarios en los programas ANSI-C que utilizan printf(3C) para indicar el tamaño y el tipo del argumento de conversión. El compilador del lenguaje D realiza automáticamente este procesamiento para las llamadas a printf(), por lo que no es necesario utilizar prefijos. Aunque los prefijos de tamaño se proporcionan para la compatibilidad con C, se desaconseja explícitamente su uso en programas D, ya que enlazan el código a un modelo de datos específico al utilizar tipos derivados. Por ejemplo, si typedef se vuelve a definir con tipos de enteros diferentes en función del modelo de datos, no se puede utilizar una única conversión de C que funcione en ambos modelos de datos sin conocer de forma explícita los dos tipos subyacentes, y sin incluir una expresión de conversión de tipo o definir varias cadenas de formato. El compilador de D resuelve este problema automáticamente permitiendo omitir los prefijos de tamaño y determinando automáticamente el tamaño del argumento.

Los prefijos de tamaño pueden insertarse justo antes del nombre de la conversión de formato, y detrás de los especificadores de indicadores, ancho y precisión. Los prefijos de tamaño son los siguientes: