当前位置: 技术问答>linux和unix
一个程序如何得到自己所在的目录?
来源: 互联网 发布时间:2016-02-04
本文导语: 请问程序如何得到自己所在目录的绝对路径? | #include #include #include int main() { char buf1[512],buf2[512]; pid_t pid; pid=getpid(); memset(buf1,0,sizeof(buf1)); memset(buf2,0,sizeof(buf2)); sprintf(buf1,"/p...
请问程序如何得到自己所在目录的绝对路径?
|
#include
#include
#include
int main()
{
char buf1[512],buf2[512];
pid_t pid;
pid=getpid();
memset(buf1,0,sizeof(buf1));
memset(buf2,0,sizeof(buf2));
sprintf(buf1,"/proc/%d/exe",pid);
readlink(buf1, buf2, sizeof(buf2));
printf("%sn",buf2);
}
---------------------------
Linux shwhg.weds 2.6.9-34.EL #1 Wed Mar 8 00:07:35 CST 2006 i686 i686 i386 GNU/Linux
gcc version 3.4.4 20050721 (Red Hat 3.4.4-2)
测试通过
#include
#include
int main()
{
char buf1[512],buf2[512];
pid_t pid;
pid=getpid();
memset(buf1,0,sizeof(buf1));
memset(buf2,0,sizeof(buf2));
sprintf(buf1,"/proc/%d/exe",pid);
readlink(buf1, buf2, sizeof(buf2));
printf("%sn",buf2);
}
---------------------------
Linux shwhg.weds 2.6.9-34.EL #1 Wed Mar 8 00:07:35 CST 2006 i686 i686 i386 GNU/Linux
gcc version 3.4.4 20050721 (Red Hat 3.4.4-2)
测试通过
|
楼上兄弟正解
还可以通过读/proc下面相应的PID值目录下的cmdline文件也可以
不过有点复杂
还可以通过读/proc下面相应的PID值目录下的cmdline文件也可以
不过有点复杂