sparkFinder sparkFinder - 1 month ago 19
C++ Question

C++: Change the current working directory

I'm trying to figure out a way where I can change my current output directory using C++ code - and also need that method to be platform agnostic.

I found the direct.h header file which is Windows compatible, and the unistd.h which is UNIX/POSIX compatible. Any solutions?

EDIT - changed title to say C++, which was my original intention.

Cheers.

Answer

The chdir function works on both POSIX (manpage) and Windows (called _chdir there but an alias chdir exists).

Both implementations return zero on success and -1 on error. As you can see in the manpage, more distinguished errno values are possible in the POSIX variant, but that shouldn't really make a difference for most use cases.

Comments