小编典典

如何在 C 程序中获取当前目录?

all

我正在制作一个 C 程序,我需要在其中获取程序启动的目录。该程序是为 UNIX 计算机编写的。我一直在看opendir()and
telldir(),但telldir()返回 a off_t (long int),所以它真的对我没有帮助。

如何获取字符串(字符数组)中的当前路径?


阅读 59

收藏
2022-07-06

共1个答案

小编典典

你看过getcwd()吗?

#include <unistd.h>
char *getcwd(char *buf, size_t size);

简单的例子:

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

int main() {
   char cwd[PATH_MAX];
   if (getcwd(cwd, sizeof(cwd)) != NULL) {
       printf("Current working dir: %s\n", cwd);
   } else {
       perror("getcwd() error");
       return 1;
   }
   return 0;
}
2022-07-06