_findnext
, _findnext32
, , _findnext64
_findnext64i32
, _findnexti64
, _wfindnext
_wfindnext32i64
_wfindnext32
, , _wfindnext64i32
_wfindnext64
_findnext32i64
_wfindnexti64
Trovare il nome successivo, se presente, che corrisponde all'argomento filespec
in una chiamata precedente a _findfirst
e quindi modificare di conseguenza il contenuto della fileinfo
struttura.
Sintassi
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
);
Parametri
handle
Handle di ricerca restituito da una chiamata precedente a _findfirst
.
fileinfo
Buffer delle informazioni del file.
Valore restituito
Se l'esito è positivo, restituisce 0. In caso contrario, restituisce -1 e imposta errno
su un valore che indica la natura dell'errore. Nella tabella seguente vengono illustrati i codici di errore possibili.
Valore errno |
Condizione |
---|---|
EINVAL |
Parametro non valido: fileinfo era NULL oppure il sistema operativo ha restituito un errore imprevisto. |
ENOENT |
Non è stato possibile trovare altri file corrispondenti. |
ENOMEM |
Memoria insufficiente o lunghezza del nome file maggiore di MAX_PATH . |
Se viene passato un parametro non valido, queste funzioni richiamano il gestore di parametri non validi, come descritto in Convalida dei parametri.
Osservazioni:
È necessario chiamare _findclose
dopo aver completato l'uso della _findfirst
funzione o _findnext
(o di qualsiasi variante). _findclose
libera le risorse usate da queste funzioni nell'applicazione.
Le varianti di queste funzioni con il prefisso w sono versioni a caratteri wide; in caso contrario, sono identiche alle funzioni a byte singolo corrispondenti.
Le varianti di queste funzioni supportano tipi time a 32 o 64 bit e dimensioni di file a 32 o a 64 bit. Il primo suffisso numerico (32
o 64
) indica le dimensioni del tipo time usato; il secondo suffisso è i32
o i64
, che indica se le dimensioni del file sono rappresentate come intero a 32 bit o 64 bit. Per informazioni su quali versioni supportano tipi time e dimensioni dei file a 32 bit e 64 bit, vedere la tabella seguente. Le varianti che usano un tipo time a 64 bit consentono di esprimere date di creazione di file fino alle 23.59.59 del 31 dicembre 3000 UTC, mentre quelle che usano solo tipi time a 32 bit consentono di rappresentare solo date fino alle 23.59.59 del 18 gennaio 2038 UTC. La mezzanotte del 1 gennaio 1970 è il limite inferiore dell'intervallo di date per tutte queste funzioni.
A meno che non ci sia un motivo preciso per usare le versioni che specificano la dimensione time in modo esplicito, usare _findnext
o _wfindnext
oppure, se è necessario supportare dimensioni maggiori di 3 GB, usare _findnexti64
o _wfindnexti64
. Tutte queste funzioni usano il tipo time a 64 bit. Nelle versioni precedenti queste funzioni usavano un tipo time a 32 bit. Se questa modifica è una modifica che causa un'interruzione per un'applicazione, è possibile definire _USE_32BIT_TIME_T
per ottenere il comportamento precedente. Se è definito _USE_32BIT_TIME_T
, _findnext
, _findnexti64
e le corrispondenti versioni Unicode usano un tipo time a 32 bit.
Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.
Varianti di _findnext per il tipo time e di lunghezza dei file
Funzioni | _USE_32BIT_TIME_T definito? |
Tipo Time | Tipo lunghezza file |
---|---|---|---|
_findnext , _wfindnext |
Non definito | 64 bit | 32 bit |
_findnext , _wfindnext |
Definito | 32 bit | 32 bit |
_findnext32 , _wfindnext32 |
Non interessato dalla definizione macro | 32 bit | 32 bit |
_findnext64 , _wfindnext64 |
Non interessato dalla definizione macro | 64 bit | 64 bit |
_findnexti64 , _wfindnexti64 |
Non definito | 64 bit | 64 bit |
_findnexti64 , _wfindnexti64 |
Definito | 32 bit | 64 bit |
_findnext32i64 , _wfindnext32i64 |
Non interessato dalla definizione macro | 32 bit | 64 bit |
_findnext64i32 , _wfindnext64i32 |
Non interessato dalla definizione macro | 64 bit | 32 bit |
Mapping di routine di testo generico
Routine Tchar.h | _UNICODE e _MBCS non definito |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_tfindnext |
_findnext |
_findnext |
_wfindnext |
_tfindnext32 |
_findnext32 |
_findnext32 |
_wfindnext32 |
_tfindnext64 |
_findnext64 |
_findnext64 |
_wfindnext64 |
_tfindnexti64 |
_findnexti64 |
_findnexti64 |
_wfindnexti64 |
_tfindnext32i64 |
_findnext32i64 |
_findnext32i64 |
_wfindnext32i64 |
_tfindnext64i32 |
_findnext64i32 |
_findnext64i32 |
_wfindnext64i32 |
Requisiti
Funzione | Intestazione obbligatoria |
---|---|
_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> |
Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).
Librerie
Tutte le versioni delle librerie di runtime C.