0
在C中,当使用stdio.h
的FILE
结构时,如果程序员试图打开文件,则当前工作目录将相对于构建目录。将CWD设置为源目录,而不是构建目录
是否有某种设置(可能是编译器标志),我可以使用它来允许在编译或运行时将CWD设置为源目录?最好是一种从Windows到* nix的跨平台的方法,但如果这不是可行的,那就让我们说* nix。
我目前在Linux下使用GCC/G ++,使用没有Qt库的qmake。
此外,与C++的std::ifstream
相反,我使用IO方法的主要原因只是个人偏好,以防有人问起。
什么样的环境是相对于构建目录的路径?这非常奇特。在大多数情况下,标准行为完全如您所愿。 –
实际上,这很有趣:我使用Qt Creator,并将我的构建设置设置为调试。当我使用'std :: ifstream'测试它时,我可以使用相对路径打开文件。但是,使用'FILE',默认情况下它会将cwd设置为build目录。 – zeboidlund