Aracılığıyla paylaş


_getcwd, _wgetcwd

Geçerli çalışma dizini alır.

Önemli

Bu API, Windows çalışma zamanı yürütme uygulamalarda kullanılamaz.Daha fazla bilgi için bkz: /zw ile desteklenmeyen crt işlevlerinin.

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

Parametreler

  • buffer
    Yol için depolama konumu.

  • maxlen
    En fazla uzunluğu karakter yolu: char için _getcwd ve wchar_t için _wgetcwd.

Dönüş Değeri

Bir işaretçi döndürür buffer. A NULL dönüş değeri bir hata gösterir ve errno ya da ayarlamak ENOMEM, ayırmak için yeterli bellek olduğunu gösteren maxlen bayt (zaman bir NULL bağımsız olarak verilir buffer), veya ERANGE, yol daha uzun olduğunu belirten maxlen karakter. maxlen Küçük veya eşit olan sıfır olarak açıklandığı gibi bu işlevi bir geçersiz parametre işleyicisi çağırır Parametre doğrulama.

Bunlar ve diğer dönüş kodları hakkında daha fazla bilgi için bkz: _doserrno, hatano, _sys_errlist ve _sys_nerr.

Notlar

_getcwd İşlevi varsayılan sürücü için geçerli çalışma dizininin tam yolunu alır ve konumunda depolar buffer. Tamsayı bağımsız değişkeni maxlen yolunu maksimum uzunluğunu belirtir. (Sondaki boş karakter dahil) yolunun uzunluğu aşarsa bir hata meydana maxlen*.* buffer Bağımsız değişken olabilir NULL; bir arabellek boyutu en az maxlen (daha yalnızca gerekli olduğunda) otomatik olarak ayrılır, kullanarak malloc, yol depolamak için. Bu arabellek çağırarak daha sonra boşaltılabileceğini free ve onu _getcwd dönüş değeri (ayrılmış arabellek için bir işaretçi).

_getcwdGeçerli çalışma dizini yolunu temsil eden bir dize döndürür. Geçerli çalışma dizini kök ise, dize bir ters eğik çizgi ile biten ( \ ). Geçerli çalışma dizini kök yerine bir dizin, dize önüne ters eğik çizgi ve dizin adı ile sona erer.

_wgetcwdgeniş karakter sürümü _getcwd; buffer bağımsız değişkeni ve dönüş değeri, _wgetcwd geniş karakter dizeleridir. _wgetcwdve _getcwd Aksi takdirde aynı şekilde davranır.

Zaman _DEBUG ve _CRTDBG_MAP_ALLOC tanımlanan, için çağırdığı _getcwd ve _wgetcwd yapılan çağrılar tarafından değiştirilir _getcwd_dbg ve _wgetcwd_dbg hata ayıklama bellek ayırması için izin vermek için. Daha fazla bilgi için bkz: _getcwd_dbg, _wgetcwd_dbg.

Genel metin eşlemeleri yordamına girildi

Tchar.h yordamına girildi

_UNICODE ve _mbcs tanımlanmamış

Tanımlanan _mbcs

Tanımlanan _UNICODE

_tgetcwd

_getcwd

_getcwd

_wgetcwd

Gereksinimler

Yordamı

Gerekli başlık

_getcwd

<direct.h>

_wgetcwd

<direct.h> veya <wchar.h>

Daha fazla uyumluluk bilgileri için bkz: Uyumluluk giriş.

Örnek

// 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 Eşdeğeri

System::Environment::CurrentDirectory

Ayrıca bkz.

Başvuru

Dizin denetimi

_chdir, _wchdir

_mkdir, _wmkdir

_rmdir, _wrmdir