Aracılığıyla paylaş


_findnext, _findnext32, , _findnext32i64, _findnext64, _findnext64i32, _findnexti64, , _wfindnext, _wfindnext32, _wfindnext32i64_wfindnext64, _wfindnext64i32,_wfindnexti64

Varsa, önceki çağrısında bağımsız değişkenle filespec eşleşen bir sonraki adı bulun ve ardından yapı içeriğini uygun şekilde değiştirinfileinfo._findfirst

Sözdizimi

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
);

Parametreler

handle
Önceki bir çağrısı _findfirsttarafından döndürülen arama tutamacı.

fileinfo
Dosya bilgileri arabelleği.

Dönüş değeri

Başarılı olursa, 0 döndürür. Aksi takdirde, -1 döndürür ve hatanın doğasını belirten bir değere ayarlar errno . Olası hata kodları aşağıdaki tabloda gösterilmiştir.

errno değer Koşul
EINVAL Geçersiz parametre: fileinfo oldu NULL. Veya işletim sistemi beklenmeyen bir hata döndürdü.
ENOENT Başka eşleşen dosya bulunamadı.
ENOMEM Yeterli bellek yok veya dosya adının uzunluğu aşıldı MAX_PATH.

Geçersiz bir parametre geçirilirse, bu işlevler Parametre doğrulama bölümünde açıklandığı gibi geçersiz parametre işleyicisini çağırır.

Açıklamalar

veya işlevini (veya _findnext herhangi bir değişken) kullanmayı _findfirst bitirdikten sonra aramanız _findclose gerekir. _findclose uygulamanızda bu işlevler tarafından kullanılan kaynakları boşaltıyor.

Bu işlevlerin w ön ekine sahip varyasyonları geniş karakterli sürümlerdir; aksi takdirde, karşılık gelen tek bayt işlevleriyle aynıdır.

Bu işlevlerin varyasyonları 32 bit veya 64 bit zaman türlerini ve 32 bit veya 64 bit dosya boyutlarını destekler. İlk sayısal sonek (32 veya 64) kullanılan zaman türünün boyutunu gösterir; ikinci sonek ya da i32 i64olur ve dosya boyutunun 32 bit veya 64 bit tamsayı olarak temsil edilip edilmediğini belirtir. Hangi sürümlerin 32 bit ve 64 bit zaman türlerini ve dosya boyutlarını desteklediği hakkında bilgi için aşağıdaki tabloya bakın. 64 bit zaman türü kullanan varyasyonlar, dosya oluşturma tarihlerinin 23:59:59, 31 Aralık 3000, UTC'ye kadar ifade edilmesine olanak sağlar; ancak 32 bit saat türlerini kullananlar yalnızca 18 Ocak 2038, UTC ile 23:59:59 arasındaki tarihleri temsil eder. 1 Ocak 1970 gece yarısı, tüm bu işlevlerin tarih aralığının alt sınırıdır.

Zaman boyutunu açıkça belirten sürümleri kullanmak için belirli bir nedeniniz yoksa veya _wfindnext veya _findnext kullanın, 3 GB'tan büyük dosya boyutlarını desteklemeniz gerekiyorsa veya _wfindnexti64kullanın_findnexti64. Tüm bu işlevler 64 bit zaman türünü kullanır. Önceki sürümlerde bu işlevler 32 bit zaman türü kullanıyordu. Bu değişiklik bir uygulama için hataya neden olan bir değişiklikse, eski davranışı almak için tanımlayabilirsiniz _USE_32BIT_TIME_T . tanımlanırsa _USE_32BIT_TIME_T ve _findnext_findnexti64 buna karşılık gelen Unicode sürümleri 32 bit zaman kullanır.

Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.

_findnext Zaman Türü ve Dosya Uzunluğu Türü Çeşitlemeleri

İşlevler _USE_32BIT_TIME_T tanımlanan? Saat türü Dosya uzunluğu türü
_findnext, _wfindnext Tanımlı değil 64 bit 32 bit
_findnext, _wfindnext Tanımlı 32 bit 32 bit
_findnext32, _wfindnext32 Makro tanımından etkilenmez 32 bit 32 bit
_findnext64, _wfindnext64 Makro tanımından etkilenmez 64 bit 64 bit
_findnexti64, _wfindnexti64 Tanımlı değil 64 bit 64 bit
_findnexti64, _wfindnexti64 Tanımlı 32 bit 64 bit
_findnext32i64, _wfindnext32i64 Makro tanımından etkilenmez 32 bit 64 bit
_findnext64i32, _wfindnext64i32 Makro tanımından etkilenmez 64 bit 32 bit

Genel metin yordamı eşlemeleri

Tchar.h yordamı _UNICODE ve _MBCS tanımlanmadı _MBCS tanımlanan _UNICODE tanımlanan
_tfindnext _findnext _findnext _wfindnext
_tfindnext32 _findnext32 _findnext32 _wfindnext32
_tfindnext64 _findnext64 _findnext64 _wfindnext64
_tfindnexti64 _findnexti64 _findnexti64 _wfindnexti64
_tfindnext32i64 _findnext32i64 _findnext32i64 _wfindnext32i64
_tfindnext64i32 _findnext64i32 _findnext64i32 _wfindnext64i32

Gereksinimler

İşlev Gerekli başlık
_findnext <io.h>
_findnext32 <io.h>
_findnext64 <io.h>
_findnexti64 <io.h>
_findnext32i64 <io.h>
_findnext64i32 <io.h>
_wfindnext <io.h> veya <wchar.h>
_wfindnext32 <io.h> veya <wchar.h>
_wfindnext64 <io.h> veya <wchar.h>
_wfindnexti64 <io.h> veya <wchar.h>
_wfindnext32i64 <io.h> veya <wchar.h>
_wfindnext64i32 <io.h> veya <wchar.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

Kitaplıklar

C çalışma zamanı kitaplıklarının tüm sürümleri.

Ayrıca bkz.

Sistem çağrıları
Dosya adı arama işlevleri