_getcwd, _wgetcwd

현재 작업 디렉터리를 가져옵니다.

중요중요

이 API는 Windows 런타임에서 실행 되는 응용 프로그램에서 사용할 수 없습니다.자세한 내용은 /zw에 지원 되는 CRT 함수.

char *_getcwd( 
   char *buffer,
   int maxlen 
);
wchar_t *_wgetcwd( 
   wchar_t *buffer,
   int maxlen 
);

매개 변수

  • buffer
    경로 대 한 저장소 위치입니다.

  • maxlen
    경로의 문자에서 최대 길이: char 에 대 한 _getcwd 및 wchar_t 에 대 한 _wgetcwd.

반환 값

buffer에 대한 포인터를 반환합니다.A NULL 반환 값은 오류를 나타냅니다 및 errno 하나 설정 ENOMEM, 할당할 메모리가 부족 하다 maxlen 바이트 (때는 NULL 인수를 지정 하 여 이름으로 buffer), 또는 ERANGE, 경로 이상 하다 maxlen 자.경우 maxlen 보다 작거나 0으로의 설명에 따라이 함수는 잘못 된 매개 변수 처리기를 호출 매개 변수 유효성 검사.

이러한 및 다른 반환 코드에 대 한 자세한 내용은 참조 하십시오 _sys_nerr, _doserrno, errno, _sys_errlist,.

설명

_getcwd 함수 기본 드라이브에 대 한 현재 작업 디렉터리의 전체 경로 가져와서 저장에 buffer.정수 인수 maxlen 경로의 최대 길이 지정 합니다.(종료 null 문자 포함)의 경로 길이 초과 하면 오류가 발생 maxlen*.*buffer 인수 수 NULL. 최소 크기의 버퍼 maxlen (더 필요한 경우에)은 자동으로 할당을 사용 하 여 malloc, 경로 저장 합니다.나중에 호출 하 여이 버퍼를 해제할 수 free 전달 된 _getcwd (할당 된 버퍼 포인터) 값을 반환 합니다.

_getcwd현재 작업 디렉터리의 경로 나타내는 string을 반환 합니다.현재 작업 디렉터리 루트 경우 문자열이 백슬래시로 끝나는 ( \ ).현재 작업 디렉터리 이외의 디렉터리 루트 경우 디렉터리 이름 및 않는 백슬래시 문자열을 종료 합니다.

_wgetcwd와이드 문자 버전인 _getcwd. buffer 의 인수 및 반환 값 _wgetcwd 와이드 문자 문자열입니다._wgetcwd및 _getcwd 그렇지를 동일 하 게 동작 합니다.

때 _DEBUG 및 _CRTDBG_MAP_ALLOC 정의 되 고 호출 _getcwd 및 _wgetcwd 호출 하 여 대체 _getcwd_dbg 및 _wgetcwd_dbg 메모리 할당을 디버깅 하는 데 수 있도록.자세한 내용은 _getcwd_dbg, _wgetcwd_dbg.

일반 텍스트 루틴 매핑

Tchar.h 루틴

_UNICODE 및 _mbcs가 정의 되어 있지 않습니다

_Mbcs가 정의

_Unicode가 정의

_tgetcwd

_getcwd

_getcwd

_wgetcwd

요구 사항

루틴

필수 헤더

_getcwd

<direct.h>

_wgetcwd

<direct.h> 또는 <wchar.h>

자세한 호환성에 대 한 내용은 호환성 소개에서 합니다.

예제

// crt_getcwd.c
// This program places the name of the current directory in the 
// buffer array, then displays the name of the current directory 
// on the screen. Passing NULL as the buffer forces getcwd to allocate
// memory for the path, which allows the code to support file paths
// longer than _MAX_PATH, which are supported by NTFS.
 
#include <direct.h>
#include <stdlib.h>
#include <stdio.h>

int main( void )
{
   char* buffer;

   // Get the current working directory: 
   if( (buffer = _getcwd( NULL, 0 )) == NULL )
      perror( "_getcwd error" );
   else
   {
      printf( "%s \nLength: %d\n", buffer, strnlen(buffer) );
      free(buffer);
   }
}
  

해당 .NET Framework 항목

System::Environment::CurrentDirectory

참고 항목

참조

디렉터리 제어

_chdir, _wchdir

_mkdir, _wmkdir

_rmdir, _wrmdir