Have you had a look at getcwd()
?
#include <unistd.h> char *getcwd(char *buf, size_t size);
Simple example:
#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; }