博客专栏

EEPW首页 > 博客 > Linux C 获取当前应用程序的绝对路径

Linux C 获取当前应用程序的绝对路径

发布人:电子禅石 时间:2020-09-14 来源:工程师 发布文章

Linux C 获取当前应用程序的绝对路径



1. 使用getcwd()获取的是当前工作路径,而不一定是程序的路径

#include <stdio.h>#include <stdlib.h>#include <unistd.h>#define MAXBUFSIZE 1024int main ( int argc, char * argv[] ){	char buf[ MAXBUFSIZE ];	getcwd(buf, MAXBUFSIZE);	printf("\n");	printf(buf);	printf("\n");	return 0;}


2. 下面这个是一个 x86_64 GNU/Linux Kernel 3.2.0-67-generic 系统中利用proc获取绝对路径的例子


    利用 readlink()

#include <stdio.h>#include <stdlib.h>#include <unistd.h>#define MAXBUFSIZE 1024int main ( int argc, char * argv[] ){	char buf[ MAXBUFSIZE ];	int count;	count = readlink( "/proc/self/exe", buf, MAXBUFSIZE );	if ( count < 0 || count >= MAXBUFSIZE )	{		printf( "Failed\n" );		return( EXIT_FAILURE );	}	buf[ count ] = '\0';	printf( "/proc/self/exe -> [%s]\n", buf );	return( EXIT_SUCCESS );}







*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

交换机相关文章:交换机工作原理




关键词:

相关推荐

技术专区

关闭