Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1979355
  • 博文数量: 610
  • 博客积分: 11499
  • 博客等级: 上将
  • 技术积分: 5511
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-12 19:27
文章分类

全部博文(610)

文章存档

2016年(5)

2015年(18)

2014年(12)

2013年(16)

2012年(297)

2011年(45)

2010年(37)

2009年(79)

2008年(101)

分类:

2012-03-01 17:10:35

方法一、

  1. char path[PATH_MAX] = 0x0;
  2. readlink( "/proc/self/exe", path, sizeof(path));


方法二、

/*******************************************************
developer: Lucifer
use fot: get program fullname
parameter: fullname buff
           proargv argv[0]
           fullnamelength buff length
date: 2009-01-09
*******************************************************/

void getfullname( char *fullname, char *proargv, int fullnamelength)
{
        if( proargv[0] == '/')
        {
                strcpy( fullname, proargv);
        }
        else if( proargv[0] == '.')
        {
                getcwd( fullname, fullnamelength);
                strcat( fullname, proargv + 1);
        }
        else
        {
                strcpy( fullname, "error");
        }
}

int main(int argc, char *argv[])
{
        char cfgfile[256] = {0x0};
        getfullname( cfgfile, argv[0], sizeof( cfgfile)-1);

        printf( "%s\n", cfgfile);
}

阅读(351) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~