다음을 통해 공유


_findnext, _findnext32, _findnext32i64, _findnext64, _findnext64i32, _findnexti64, _wfindnext, _wfindnext32, _wfindnext32i64_wfindnext64_wfindnext64i32_wfindnexti64

이전 호출_findfirst에서 인수와 일치하는 filespec 다음 이름(있는 경우)을 찾은 다음 그에 따라 구조체 내용을 변경 fileinfo 합니다.

구문

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

매개 변수

handle
이전 호출에서 반환된 검색 핸들입니다 _findfirst.

fileinfo
파일 정보 버퍼입니다.

반환 값

성공하면 0을 반환합니다. 그렇지 않으면 -1을 반환하고 실패의 특성을 나타내는 값으로 설정합니다 errno . 다음 표에 가능한 오류 코드가 나와 있습니다.

errno 조건
EINVAL 잘못된 매개 변수: fileinfoNULL이었습니다. 또는 운영 체제에서 예기치 않은 오류를 반환했습니다.
ENOENT 일치하는 추가 파일을 찾을 수 없습니다.
ENOMEM 메모리가 부족하거나 파일 이름의 길이가 MAX_PATH를 초과했습니다.

잘못된 매개 변수가 전달되면 이러한 함수는 매개 변수 유효성 검사에 설명된 대로 잘못된 매개 변수 처리기를 호출합니다.

설명

또는 _findnext 함수(또는 변형)를 사용하여 _findfirst 완료한 후에 호출 _findclose 해야 합니다. _findclose 는 애플리케이션에서 이러한 함수에 사용되는 리소스를 해제합니다.

w 접두사를 사용하는 이러한 함수의 변형은 와이드 문자 버전이며, 그렇지 않으면 해당 싱글 바이트 함수와 동일합니다.

이러한 함수의 변형은 32비트 또는 64비트 시간 형식과 32비트 또는 64비트 파일 크기를 지원합니다. 첫 번째 숫자 접미사(32 또는 64)는 사용된 시간 형식의 크기를 나타내며, 두 번째 접미사( i32 또는 i64)는 파일 크기가 32비트 정수로 표시되는지 아니면 64비트 정수로 표시되는지를 나타냅니다. 어떤 버전이 32비트 및 64비트 시간 형식과 파일 크기를 지원하는지에 대한 자세한 내용은 다음 표를 참조하세요. 64비트 시간 형식을 사용하는 변형을 통해 3000년 12월 31일 23:59:59(UTC)까지 파일 생성 날짜를 표현할 수 있습니다. 반면, 32비트 시간 형식을 사용하는 변형은 2038년 1월 18일 23:59:59(UTC)까지의 날짜만 나타냅니다. 1970년 1월 1일 자정은 이러한 모든 함수에 대한 날짜 범위의 하한입니다.

시간 크기를 명시적으로 지정하는 버전을 사용할 특별한 이유가 없다면 _findnext 또는 _wfindnext를 사용하고, 3GB보다 큰 파일 크기를 지원해야 한다면 _findnexti64 또는 _wfindnexti64를 사용하세요. 이러한 함수는 모두 64비트 시간 형식을 사용합니다. 이전 버전에서는 이러한 함수에서 32비트 시간 형식을 사용했습니다. 이 변경 내용이 애플리케이션의 호환성이 손상되는 변경인 경우 이전 동작을 가져오기 위해 정의 _USE_32BIT_TIME_T 할 수 있습니다. _USE_32BIT_TIME_T를 정의하면 _findnext, _findnexti64 및 해당 유니코드 버전에서는 32비트 시간을 사용합니다.

기본적으로 이 함수의 전역 상태는 애플리케이션으로 범위가 지정됩니다. 이 동작을 변경하려면 CRT 전역 상태를 참조하세요.

_findnext의 시간 형식 및 파일 길이 형식 변형

함수 _USE_32BIT_TIME_T가 정의되었나요? 시간 형식 파일 길이 형식
_findnext, _wfindnext 정의되지 않음 64비트 32비트
_findnext, _wfindnext 정의됨 32비트 32비트
_findnext32, _wfindnext32 매크로 정의의 영향을 받지 않음 32비트 32비트
_findnext64, _wfindnext64 매크로 정의의 영향을 받지 않음 64비트 64비트
_findnexti64, _wfindnexti64 정의되지 않음 64비트 64비트
_findnexti64, _wfindnexti64 정의됨 32비트 64비트
_findnext32i64, _wfindnext32i64 매크로 정의의 영향을 받지 않음 32비트 64비트
_findnext64i32, _wfindnext64i32 매크로 정의의 영향을 받지 않음 64비트 32비트

일반 텍스트 루틴 매핑

Tchar.h 루틴 _UNICODE_MBCS 정의되지 않음 정의된 _MBCS 정의된 _UNICODE
_tfindnext _findnext _findnext _wfindnext
_tfindnext32 _findnext32 _findnext32 _wfindnext32
_tfindnext64 _findnext64 _findnext64 _wfindnext64
_tfindnexti64 _findnexti64 _findnexti64 _wfindnexti64
_tfindnext32i64 _findnext32i64 _findnext32i64 _wfindnext32i64
_tfindnext64i32 _findnext64i32 _findnext64i32 _wfindnext64i32

요구 사항

함수 필수 헤더
_findnext <io.h>
_findnext32 <io.h>
_findnext64 <io.h>
_findnexti64 <io.h>
_findnext32i64 <io.h>
_findnext64i32 <io.h>
_wfindnext <io.h> 또는 <wchar.h>
_wfindnext32 <io.h> 또는 <wchar.h>
_wfindnext64 <io.h> 또는 <wchar.h>
_wfindnexti64 <io.h> 또는 <wchar.h>
_wfindnext32i64 <io.h> 또는 <wchar.h>
_wfindnext64i32 <io.h> 또는 <wchar.h>

호환성에 대한 자세한 내용은 호환성을 참조하세요.

라이브러리

모든 버전의 C 런타임 라이브러리입니다.

참고 항목

시스템 호출
파일 이름 검색 함수