如何在Cygwin中使用gcc使用“ getcwd”获取完整的工作目录路径

时间:2018-11-16 13:53:09

标签: c gcc cygwin

我正在使用Cygwin gcc编译器使用Code :: Blocks编译和测试C程序。我对“ getcwd”函数的输出(unistd.h)有疑问:

#include <unistd.h>
#include <limits.h>
#include <stdio.h>

int main(int argc, char *argv[]) {
    char workingDir[PATH_MAX];

    if (getcwd(workingDir, sizeof(workingDir)) != NULL) {
        fprintf(stdout, "Working directory: %s\n", workingDir);
    }
}

在Code :: Blocks中运行时,getcwd函数返回完整的Cygwin路径:

C:\Users\mrosh\CodeBlocks\GetcwdTest\bin\Debug\GetcwdTest.exe
Working directory: /cygdrive/c/Users/mrosh/GetcwdTest/GetcwdTest/bin/Debug

从Windows命令行运行时,我仅获得当前的工作文件夹:

C:\Users\mrosh\CodeBlocks\GetcwdTest\bin\Debug>GetcwdTest.exe
Working directory: /Debug

从Windows命令行运行时,我确实需要从程序内部访问完整路径。知道我如何实现吗?

0 个答案:

没有答案