0

我正在尝试找出我的当前工作目录是什么。我试过同时使用_fullpath_getcwd作为<direct.h>. 但是,它给我的只是一个 8 字节的十六进制值(例如5504CA90)。

为什么它给我这个,我怎样才能得到正确的 cwd?我在 C++ 中使用 Visual Studio 2015。

我的代码如下所示:

std::cout << "CWD: " << _fullpath << "\n";

它给了我这个输出:

CWD: 0F8CCA90

但是,每次运行它时它都会给我一个不同的十六进制值。

4

1 回答 1

0

你没有调用_fullpath/getcwd方法。您的代码将简单地打印其地址。这是十六进制值,您将进入控制台输出。要调用方法,您必须提供其参数

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

char szPath[255];
char* pszPath = _getcwd(szPath, sizeof(szPath)/sizeof(char));
if(pszPath)
  std::cout << pszPath << std::endl;
于 2016-04-06T04:22:37.867 回答