_findnext
, _findnext32
, _findnext32i64
, _findnext64
, _findnext64i32
, _findnexti64
, _wfindnext
, _wfindnext32
_wfindnext32i64
_wfindnext64
_wfindnext64i32
_wfindnexti64
Busque el siguiente nombre, si existe, que coincida con el filespec
argumento de una llamada anterior a y, a _findfirst
continuación, modifique el contenido de la fileinfo
estructura en consecuencia.
Sintaxis
int _findnext(
intptr_t handle,
struct _finddata_t *fileinfo
);
int _findnext32(
intptr_t handle,
struct _finddata32_t *fileinfo
);
int _findnext64(
intptr_t handle,
struct __finddata64_t *fileinfo
);
int _findnexti64(
intptr_t handle,
struct __finddatai64_t *fileinfo
);
int _findnext32i64(
intptr_t handle,
struct _finddata32i64_t *fileinfo
);
int _findnext64i32(
intptr_t handle,
struct _finddata64i32_t *fileinfo
);
int _wfindnext(
intptr_t handle,
struct _wfinddata_t *fileinfo
);
int _wfindnext32(
intptr_t handle,
struct _wfinddata32_t *fileinfo
);
int _wfindnext64(
intptr_t handle,
struct _wfinddata64_t *fileinfo
);
int _wfindnexti64(
intptr_t handle,
struct _wfinddatai64_t *fileinfo
);
int _wfindnext32i64(
intptr_t handle,
struct _wfinddatai64_t *fileinfo
);
int _wfindnext64i32(
intptr_t handle,
struct _wfinddata64i32_t *fileinfo
);
Parámetros
handle
Identificador de búsqueda devuelto por una llamada anterior a _findfirst
.
fileinfo
Búfer de información de archivo.
Valor devuelto
Si la operación se realiza correctamente, devuelve 0. De lo contrario, devuelve -1 y establece en errno
un valor que indica la naturaleza del error. En la siguiente tabla se muestran los posibles códigos de error.
Valor de errno |
Condición |
---|---|
EINVAL |
Parámetro no válido: fileinfo era NULL . O bien, el sistema operativo ha devuelto un error inesperado. |
ENOENT |
No se han encontrado más archivos coincidentes. |
ENOMEM |
No hay suficiente memoria o la longitud del nombre de archivo supera a MAX_PATH . |
Si se pasa un parámetro no válido, estas funciones invocan al controlador de parámetros no válidos, como se describe en Validación de parámetros.
Comentarios
Debe llamar _findclose
después de que haya terminado de usar la _findfirst
función o _findnext
(o cualquier variante). _findclose
libera los recursos usados por estas funciones en la aplicación.
Las variaciones de estas funciones con el prefijo w son versiones de caracteres anchos; de lo contrario, son idénticas a las funciones de un solo byte correspondientes.
Las variaciones de estas funciones admiten tipos de tiempo de 32 o 64 bits y tamaños de archivos de 32 o 64 bits. El primer sufijo numérico (32
o 64
) indica el tamaño del tipo de tiempo usado; el segundo sufijo es i32
o i64
, lo que indica si el tamaño del archivo se representa como un entero de 32 o 64 bits. Para obtener información sobre las versiones que admiten tipos de tiempo y tamaños de archivo de 32 bits y 64 bits, consulte la tabla siguiente. Las variaciones que usan un tipo de tiempo de 64 bits permiten expresar fechas de creación de archivos hasta las 23:59:59 horas del 31 de diciembre de 3000, UTC; mientras que las que usan un tipo de tiempo de 32 bits solo representan fechas hasta las 23:59:59 horas del 18 de enero de 2038, UTC. La medianoche del 1 de enero de 1970 es el límite inferior del intervalo de fechas para todas estas funciones.
A menos que tenga una razón concreta para usar las versiones que especifican el tamaño de tiempo de forma explícita, use _findnext
o _wfindnext
; si tiene que admitir tamaños de archivo de más de 3 GB, use _findnexti64
o _wfindnexti64
. Todas estas funciones usan el tipo de tiempo de 64 bits. En versiones anteriores, estas funciones usan un tipo de tiempo de 32 bits. Si este cambio es un cambio importante para una aplicación, puede definir _USE_32BIT_TIME_T
para obtener el comportamiento anterior. Si se define _USE_32BIT_TIME_T
, _findnext
, _findnexti64
y sus correspondientes versiones Unicode usan un tiempo de 32 bits.
De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.
Variaciones de tipo de tiempo y tipo de longitud de archivo de _findnext
Funciones | ¿Se ha definido _USE_32BIT_TIME_T ? |
Tipo de tiempo | Tipo de longitud de archivo |
---|---|---|---|
_findnext , _wfindnext |
No definida | 64 bits | 32 bits |
_findnext , _wfindnext |
Definido | 32 bits | 32 bits |
_findnext32 , _wfindnext32 |
No se ve afectada por la definición de macro | 32 bits | 32 bits |
_findnext64 , _wfindnext64 |
No se ve afectada por la definición de macro | 64 bits | 64 bits |
_findnexti64 , _wfindnexti64 |
No definida | 64 bits | 64 bits |
_findnexti64 , _wfindnexti64 |
Definido | 32 bits | 64 bits |
_findnext32i64 , _wfindnext32i64 |
No se ve afectada por la definición de macro | 32 bits | 64 bits |
_findnext64i32 , _wfindnext64i32 |
No se ve afectada por la definición de macro | 64 bits | 32 bits |
Asignaciones de rutinas de texto genérico
Rutina Tchar.h | _UNICODE y _MBCS no definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tfindnext |
_findnext |
_findnext |
_wfindnext |
_tfindnext32 |
_findnext32 |
_findnext32 |
_wfindnext32 |
_tfindnext64 |
_findnext64 |
_findnext64 |
_wfindnext64 |
_tfindnexti64 |
_findnexti64 |
_findnexti64 |
_wfindnexti64 |
_tfindnext32i64 |
_findnext32i64 |
_findnext32i64 |
_wfindnext32i64 |
_tfindnext64i32 |
_findnext64i32 |
_findnext64i32 |
_wfindnext64i32 |
Requisitos
Función | Encabezado necesario |
---|---|
_findnext |
<io.h> |
_findnext32 |
<io.h> |
_findnext64 |
<io.h> |
_findnexti64 |
<io.h> |
_findnext32i64 |
<io.h> |
_findnext64i32 |
<io.h> |
_wfindnext |
<io.h> o <wchar.h> |
_wfindnext32 |
<io.h> o <wchar.h> |
_wfindnext64 |
<io.h> o <wchar.h> |
_wfindnexti64 |
<io.h> o <wchar.h> |
_wfindnext32i64 |
<io.h> o <wchar.h> |
_wfindnext64i32 |
<io.h> o <wchar.h> |
Para obtener más información sobre compatibilidad, consulte Compatibilidad.
Bibliotecas
Todas las versiones de las bibliotecas en tiempo de ejecución de C.
Consulte también
Llamadas del sistema
Funciones de búsqueda de nombre de archivo