Compartir a través de


_vfprintf_p, _vfprintf_p_l, _vfwprintf_p, _vfwprintf_p_l

Escribir con formato salida mediante un puntero a una lista de argumentos, con la capacidad de especificar el orden en que los argumentos se utilizan en la cadena de formato.

int _vfprintf_p(
   FILE *stream,
   const char *format,
   va_list argptr 
);
int _vfprintf_p_l(
   FILE *stream,
   const char *format,
   locale_t locale,
   va_list argptr 
);
int _vfwprintf_p(
   FILE *stream,
   const wchar_t *format,
   va_list argptr 
);
int _vfwprintf_p_l(
   FILE *stream,
   const wchar_t *format,
   locale_t locale,
   va_list argptr 
);

Parámetros

  • stream
    Puntero a la estructura FILE.

  • format
    Especificación de formato.

  • argptr
    Puntero a la lista de argumentos.

  • locale
    Configuración regional que se va a usar.

Para obtener más información, vea Especificaciones de formato.

Valor devuelto

_vfprintf_p y _vfwprintf_p devuelven el número de caracteres escritos, sin incluir el carácter de terminación nulo, o un valor negativo si se produce un error de salida.

Comentarios

Cada una de estas funciones toma un puntero a una lista de argumentos y, a continuación, aplica formato a los datos determinados y los escribe en stream. Estas funciones se diferencian de las versiones de _vfprint_s y de _vfwprint_s sólo en que admiten parámetros posicionales. Para obtener más información, vea printf_p (Parámetros de posición).

_vfwprintf_p es la versión de caracteres anchos de _vprintf_p. Las dos funciones se comportan exactamente igual si el flujo se abre en modo ANSI. _vprintf_p no admite actualmente la salida en un flujo UNICODE.

Las versiones de estas funciones con el sufijo _l son idénticas salvo que usan el parámetro locale pasado en lugar de la configuración regional del subproceso actual.

Nota de seguridadNota sobre la seguridad

Asegúrese de que format no es una cadena definida por el usuario.Para obtener más información, vea Evitar saturaciones del búfer.

Si stream o format es un puntero NULL, o si la cadena de formato contiene caracteres de formato no válidos, se invoca el controlador no válido de parámetro, tal y como se describe en Validación de parámetros. Si la ejecución puede continuar, las funciones devuelven -1 y establecen errno en EINVAL.

Asignaciones de rutina de texto genérico

Rutina TCHAR.H

_UNICODE y _MBCS no definidos

_MBCS definido

_UNICODE definido

_vftprintf_p

_vfprintf_p

_vfprintf_p

_vfwprintf_p

_vftprintf_p_l

_vfprintf_p_l

_vfprintf_p_l

_vfwprintf_p_l

Requisitos

Rutina

Encabezado necesario

Encabezados opcionales

_vfprintf_p, _vfprintf_p_l

<stdio.h> y <stdarg.h>

<varargs.h>*

_vfwprintf_p, _vfwprintf_p_l

<stdio.h> o <wchar.h>, y <stdarg.h>

<varargs.h>*

* Necesario para la compatibilidad con UNIX V.

Para obtener información adicional de compatibilidad, vea Compatibilidad en la Introducción.

Equivalente en .NET Framework

No es aplicable Para llamar a la función estándar de C, use PInvoke. Para obtener más información, vea Ejemplos de invocación de plataforma.

Vea también

Referencia

E/S de secuencia

vprintf (Funciones)

fprintf, _fprintf_l, fwprintf, _fwprintf_l

printf, _printf_l, wprintf, _wprintf_l

sprintf, _sprintf_l, swprintf, _swprintf_l, __swprintf_l

va_arg, va_copy, va_end, va_start

printf_p (Parámetros de posición)

_fprintf_p, _fprintf_p_l, _fwprintf_p, _fwprintf_p_l

_vsprintf_p, _vsprintf_p_l, _vswprintf_p, _vswprintf_p_l

_sprintf_p, _sprintf_p_l, _swprintf_p, _swprintf_p_l