【C】linux下切换工作目录至程序所在目录
生活随笔
收集整理的這篇文章主要介紹了
【C】linux下切换工作目录至程序所在目录
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1、獲取當(dāng)前程序的絕對(duì)路徑
/proc/self/exe是一個(gè)符號(hào)鏈接,代表當(dāng)前程序的絕對(duì)路徑
用readlink讀取/proc/self/exe可以獲取當(dāng)前程序的絕對(duì)路徑
2、從字符串中獲取目錄
char dirname(char path);
3、改變當(dāng)前工作目錄
int chdir(const char *path );
4、完整示例
#include <unistd.h>
#include <linux/limits.h>
#include <libgen.h>void changeWorkDir()
{char exePath[PATH_MAX];memset(exePath, 0, sizeof(exePath));readlink("/proc/self/exe", exePath, sizeof(exePath));char *exeDir = dirname(exePath);chdir(exeDir);
}int main()
{changeWorkDir();return 0;
}
總結(jié)
以上是生活随笔為你收集整理的【C】linux下切换工作目录至程序所在目录的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【C++】零散知识
- 下一篇: 【C++】智能指针(一)入门