getcwd.c

来自「一个类似windows」· C语言 代码 · 共 34 行

C
34
字号
#include <precomp.h>
#include <direct.h>
#include <stdlib.h>
#include <tchar.h>

/*
 * @implemented
 */
_TCHAR* _tgetcwd(_TCHAR* buf, int size)
{
  _TCHAR dir[MAX_PATH];
  DWORD dir_len = GetCurrentDirectory(MAX_PATH,dir);

  if (dir_len == 0)
  {
    _dosmaperr(GetLastError());
    return NULL; /* FIXME: Real return value untested */
  }

  if (!buf)
  {
    return _tcsdup(dir);
  }

  if (dir_len >= (DWORD)size)
  {
    __set_errno(ERANGE);
    return NULL; /* buf too small */
  }

  _tcscpy(buf,dir);
  return buf;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?