Exportar (0) Imprimir
Expandir todo
and
div
eof
not
or
xor
Expandir Minimizar
Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

strerror, _strerror, _wcserror, __wcserror

Obtiene una cadena de mensaje de error del sistema (strerror, _wcserror) o da formato a una cadena de mensaje de error proporcionada por el usuario (_strerror, __wcserror). Hay disponibles versiones más seguras de estas funciones; vea strerror_s, _strerror_s, _wcserror_s, __wcserror_s.

char *strerror(    int errnum  ); char *_strerror(    const char *strErrMsg  ); wchar_t * _wcserror(    int errnum  ); wchar_t * __wcserror(    const wchar_t *strErrMsg  );

errnum

Número de error.

strErrMsg

Mensaje proporcionado por el usuario.

Todas estas funciones devuelven un puntero a la cadena de mensaje de error. Las siguientes llamadas pueden sobrescribir la cadena.

La función strerror asigna errnum a una cadena de mensaje de error y devuelve un puntero a la cadena. Ni strerror ni _strerror imprimen el mensaje en realidad: para eso, hay que llamar a una función de salida como fprintf:

if (( _access( "datafile",2 )) == -1 )
   fprintf( stderr, _strerror(NULL) );

Si strErrMsg se pasa como NULL, _strerror devuelve un puntero a una cadena que contiene el mensaje de error del sistema de la última llamada a biblioteca que generó un error. La cadena del mensaje de error termina con el carácter de línea nueva ('\n'). Si strErrMsg no es igual a NULL, _strerror devuelve un puntero a una cadena que contiene (en orden) el mensaje de cadena, dos puntos, un espacio, el mensaje de error del sistema de la última llamada a biblioteca que generó un error y, por último, un carácter de línea nueva. El mensaje de cadena puede tener, como máximo, 94 caracteres.

El número de error real para _strerror se almacena en la variable errno. Para generar resultados precisos, llame a _strerror inmediatamente después de que una rutina de biblioteca devuelva un error. De lo contrario, las llamadas subsiguientes a strerror o _strerror pueden sobrescribir el valor de errno.

_wcserror y __wcserror son versiones con caracteres anchos de strerror y _strerror, respectivamente.

_strerror , _wcserror y __wcserror no forman parte de la definición de ANSI, sino que son extensiones de Microsoft que le aconsejamos no use si lo que quiere es código portable. Para la compatibilidad con ANSI, use strerror en su lugar.

Para obtener cadenas de error, recomendamos strerror o _wcserror en lugar de las macros desusadas _sys_errlist y _sys_nerr y las funciones internas desusadas __sys_errlist y __sys_nerr.

Asignaciones de rutina de texto genérico

Rutina TCHAR.H

_UNICODE y _MBCS no definidos

_MBCS definido

_UNICODE definido

_tcserror

strerror

strerror

_wcserror

Rutina

Encabezado necesario

strerror

<string.h>

_strerror

<string.h>

_wcserror , __wcserror

<string.h>

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

Vea el ejemplo de perror.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft