setprogname.c

#ifdef HAVE_CONFIG_H
#include <config.h>
RCSID("$Id: setprogname.c 15955 2005-08-23 10:19:20Z lha $");
#endif

#include "roken.h"

#ifndef HAVE___PROGNAME
extern const char *__progname;
#endif

#ifndef HAVE_SETPROGNAME
void ROKEN_LIB_FUNCTION
setprogname(const char *argv0)
{
#ifndef HAVE___PROGNAME
    const char *p;
    if(argv0 == NULL)
	return;
    //从argv0的右侧查找'/'第一次出现的地方,然后将指针指向p,
    //这里的功能是从假设带有'/'的可执行文件中获取可执行文件名。
    p = strrchr(argv0, '/');
    if(p == NULL)
	p = argv0;
    else
	p++;
    __progname = p;
#endif
}
#endif /** HAVE_SETPROGNAME */

转载于:https://my.oschina.net/jemygraw/blog/99249

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值