¿Qué significa el código errno 22 (EINVAL) en Cualquiera?

 
También puede significar:
ConstanteTipoSO
ERROR_BAD_COMMANDError de WindowsWindows
KERN_INVALID_HOSTRetorno del kernel de macOSmacOS
ippStsNoIppFunctionFoundEstado de Intel IPPCualquiera
CID_HANDLE_CREATIONCódigo BSODWindows
Anterior Siguiente
EISDIR ENFILE

EINVAL

Qué significa EINVAL

EINVAL no tiene una causa universal: significa que la interfaz invocada rechazó uno o varios argumentos o la combinación entre ellos. En mmap(), por ejemplo, puede deberse a longitud, offset, dirección o flags incompatibles; en una conversión numérica puede señalar una base no admitida. La explicación útil siempre está en el contrato de la función concreta.

Tampoco todas las API notifican este código mediante errno. Algunas funciones POSIX devuelven el número de error directamente. El tratamiento debe seguir la convención de retorno de la función, no asumir automáticamente «-1 y luego mirar errno».

Qué comprobar

  • Registra el nombre de la función y los valores originales de argumentos, flags, longitudes, offsets y alineaciones relevantes.
  • Comprueba relaciones entre parámetros —por ejemplo dependencias entre flags o requisitos de alineación— y no solo cada valor por separado.
  • Rechaza opciones no soportadas en el límite de la aplicación y conserva suficiente contexto para identificar la precondición incumplida.
  • No repitas una invocación idéntica: normalmente hace falta cambiar la entrada o escoger otra ruta de API.

Referencias técnicas


¿Buscas un código diferente? Buscar otro código de estado o error.