How can I change my current working directory in C++ in a platform-agnostic way?
I found the direct.h header file, which is Windows compatible, and the unistd.h, which is UNIX/POSIX compatible.
direct.h
unistd.h
The chdir function works on both POSIX (manpage) and Windows (called _chdir there but an alias chdir exists).
chdir
_chdir
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.
2.1m questions
2.1m answers
60 comments
57.0k users