【发布时间】:2013-12-05 07:42:33
【问题描述】:
我希望能够得到当前的源文件路径。
string txt_file = CURRENT_FILE_PATH +"../../txt_files/first.txt";
inFile.open(txt_file .c_str());
有没有办法获得 CURRENT_FILE_PATH ? 我不是指可执行路径。我的意思是运行代码的源文件的当前位置。
非常感谢, 乔拉。
【问题讨论】:
-
您的要求似乎不清楚。当前工作目录由
getcwd()给出,源文件的路径可通过__FILE__宏访问。 -
您对模块的询问意味着可执行文件,因此您需要工作目录,这就是答案stackoverflow.com/questions/143174/…
-
也许这个词:模块不正确。我想要源文件的路径。 FILE 给了我相对路径。我想要完整的路径。
-
对于 Windows,请参阅 this question,对于 Linux/OSX,请参阅 this question。
-
答案是使用 realpath() 函数。我已经尝试过了,但它需要一个相对路径才能开始。我没有。我对源文件位置“一无所知”。
标签: c++