Windows和Linux下获取当前可执行文件路径和工作目录

开发技术 作者: 2024-06-17 01:45:01
1、Windows下的获取当前可执行文件的路径和当前工程目录。(1)获取当前可执行文件路径:

1、Windows下的获得当前可履行文件的路径和当前工程目录。

(1)获得当前可履行文件路径:
#include <shlwapi.h> #pragma comment(lib,"shlwapi.lib") wchar_t szExePath[MAX_PATH] = {0}; GetModuleFileNameW(NULL,szExePath,sizeof(szExePath)); PathRemoveFileSpecW(szExePath);
(2)如果想获得当前工程的路径的话可使用下面的函数:
GetCurrentDirectory()

2、linux下获得当前可履行文件路径和工程路径。

(1)获得当前可履行文件路径:
#include <limits.h> #include <stdio.h> #include <string.h> #include <unistd.h> size_t GetCurrentExcutableFilePathName( char* processdir,char* processname,size_t len) { char* path_end; if(readlink("/proc/self/exe",processdir,len) <=0) return ⑴; path_end = strrchr(processdir,'/'); if(path_end == NULL) return ⑴; ++path_end; strcpy(processname,path_end); *path_end = ''; return (size_t)(path_end - processdir); }
(2)如果想获得当前工程的路径的话可使用下面的函数:
//头文件:#include <unistd.h> //定义函数:char * getcwd(char * buf,size_t size); //函数说明:getcwd()会将当前的工作目录绝对路径复制到参数buf 所指的内存空间,参数size 为buf 的空间大小



原创声明
本站部分文章基于互联网的整理,我们会把真正“有用/优质”的文章整理提供给各位开发者。本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
本文链接:http://www.jiecseo.com/news/show_28390.html