运行的应用程序的当前工作目录和所在的目录的区别
答案:1 悬赏:20
解决时间 2021-03-07 13:10
- 提问者网友:心裂
- 2021-03-07 05:46
运行的应用程序的当前工作目录和所在的目录的区别
最佳答案
- 二级知识专家网友:哥在撩妹请勿打扰
- 2021-03-07 07:08
周末和一个做linux平台开发的朋友讨论了下如何获取当前运行程序所在的目录的问题。首先我在这里简单的介绍下运行的应用程序的当前工作目录和运行应用程序所在的目录的区别?
当前工作目录 (Current Working Directory)
一般来说,每个进程都有一个与之相关联的分级文件系统(hierarchical file system)下的目录,称之为该进程的当前工作目录。如果程序刚进入main入口处的时候,当前工作目录其实就是程序启动的目录,但是当前工作目录是可以通过程序进行设置或者随着OpenFileDialog、SaveFileDialog等对象所确定的目录而改变。所以使用的时候要小心。
应用程序所在的目录
该进程从中启动的目录,即程序文件自身所在的目录。
所以,当前工作目录和程序所在的目录可以不同。
Windows获取程序全路径的接口是:GetModuleFileName
C Run-Time 库获取程序全路径接口是:_get_tpgmptr
#include
#include
#include
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
char a[MAX_PATH] = {0};
WCHAR *p = NULL;
_get_tpgmptr(&p);
wcout << p << endl;
}
当前工作目录 (Current Working Directory)
一般来说,每个进程都有一个与之相关联的分级文件系统(hierarchical file system)下的目录,称之为该进程的当前工作目录。如果程序刚进入main入口处的时候,当前工作目录其实就是程序启动的目录,但是当前工作目录是可以通过程序进行设置或者随着OpenFileDialog、SaveFileDialog等对象所确定的目录而改变。所以使用的时候要小心。
应用程序所在的目录
该进程从中启动的目录,即程序文件自身所在的目录。
所以,当前工作目录和程序所在的目录可以不同。
Windows获取程序全路径的接口是:GetModuleFileName
C Run-Time 库获取程序全路径接口是:_get_tpgmptr
#include
#include
#include
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
char a[MAX_PATH] = {0};
WCHAR *p = NULL;
_get_tpgmptr(&p);
wcout << p << endl;
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯