如何知道在OS / X中启动可执行文件的目录?

时间:2013-04-16 21:48:21

标签: c macos directory main finder

当从Finder启动以常规int main(int argc, char* argv[])样式编写的C程序时,它将从启动它的用户的主目录开始。 (例如 / Users / Fork )。

是否有任何花哨的钩子,这样一个基于终端的程序可以知道它在哪个目录中启动?

1 个答案:

答案 0 :(得分:0)

您可以通过_NSGetExecutablePath获取程序二进制图像的完整路径。规范化使用例如realpath然后使用例如剥离文件名dirname并且您拥有程序启动的目录。