Linux下获取程序绝对路径(全路径)的方法
直接上源代码:
#include <stdio.h>
#include <unistd.h>
#define MAXL_PATH 1024
/**
* NAME: getAbsopath
* DESC: 获取程序的绝对路径
* REMK: Absopath - Absolute path
*/
char* getAbsopath()
{
static char buf[MAXL_PATH];
int i;
int len = readlink("/proc/self/exe", buf, MAXL_PATH);
if (len < 0 || len >= MAXL_PATH)
{
return NULL;
}
buf[len] = '\0';
for (i = len; i >= 0; i--)
{
if (buf[i] == '/')
{
buf[i + 1] = '\0';
break;
}
}
return buf;
}
int main(int argc, char** argv)
{
printf("%s\n", getAbsopath());
return 0;
}
#include <stdio.h>
#include <unistd.h>
/**
* NAME: getAbsopath
* DESC: 获取程序的绝对路径
* REMK: Absopath - Absolute path
*/
char* getAbsopath(char* buf, const int size)
{
int i;
int len =

本文介绍了在Linux环境中,如何通过源代码实现获取程序的绝对路径。内容包含一段直接展示如何操作的源代码。
的方法&spm=1001.2101.3001.5002&articleId=54020603&d=1&t=3&u=d3c10c9c049940659aa2a4d95596cde7)
666

被折叠的 条评论
为什么被折叠?



