首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CWD C++窗口

CWD C++窗口
EN

Stack Overflow用户
提问于 2017-04-19 09:11:04
回答 3查看 351关注 0票数 0

我试图让我的程序改变目录(到用户希望的地方),但我不能导航到那里并创建一个文件?看起来我可以在那里导航,但是当我到达下一个系统调用时,它会返回到当前目录。

有没有一种方法来设置我的程序cwd所指向的位置?

代码语言:javascript
复制
std::string s1 = "cd " + userDirectory;
system(s1.c_str());
system("dir > test.txt");
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-04-19 09:14:57

  • Windows上的SetCurrentDirectory Win32。
  • POSIX的chdir() / 克迪尔 (许多OS:es上可用的通用的many )。
  • 助推/std::文件系统 current_path() for C++ (std in C++17)。
票数 2
EN

Stack Overflow用户

发布于 2017-04-19 09:16:38

system函数作为一个新进程启动一个新的命令解释器。然后在命令解释器中运行命令。而且,由于cd命令是一个内置命令,它将只应用于命令解释器进程,而不适用于您的进程。

您可以尝试以下几种解决方案:

  • 将命令(cddir等)放入运行的脚本文件中。
  • 更改进程的工作目录。
票数 2
EN

Stack Overflow用户

发布于 2017-04-19 09:14:46

在Windows上,您可以使用SetCurrentDirectoryW函数更改工作目录。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43491275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档