如何创建给定相对路径的文件
How to create files given relative path
>我在命令行中给出了一个路径,其中有一个文件名,如下所示:
./something.bin infomration /some/some2/thing.txt
我知道我可以将/some/some2/thing.txt
放入全局变量中并使用它。现在,我想:
在路径/some/some2/
中创建一个名为 thing.txt
对于这样的事情,你必须使用传递给主入口点的参数:
int main(int argc, char **argv) {
// some other code
return 0;
}
如您所见,main()
将收到两个参数:
- argc:第一个参数将包括通过第二个参数传递的参数数。
- argv:第二个参数指向指向具有实际参数的字符串的指针。
用法非常简单,但重要的是要记住,第一个"参数"是可执行文件本身。
在您的示例中,argc
将设置为 3,argv
将指向以下字符串:
- argv[0]:
./something.bin
(基于操作系统,这也可能是绝对路径) - Argv[1]:
infomration
[原文如此] - ARGV[2]:
/some/some2/thing.txt
如您所见,您所要做的就是:
- 验证参数数是否正确。
- 验证第二个参数(
infomration
)是否正确。 - 使用第三个参数接收实际文件名。
请记住,用户可能会传递无效参数(例如文件名的无效字符),或者他可能会试图诱骗您执行不应执行的操作(例如传递保留名称)。
相关文章:
- Windows 和 Linux 之间的相对路径分辨率差异?
- 如何获取 CMake 单元测试的相对路径?
- 从另一个应用启动我的应用时出现相对路径更改问题
- CMake 链接 2 个具有相对路径的库
- cmake find_package CMakeLists.txt 子文件夹中的相对路径
- 在可执行文件中使用带有符号链接的相对路径
- C++流找不到相对路径
- 如何将COM .tlb文件导入具有相对路径C++文件中?
- C++包括断开的相对路径
- CMake 安装具有相对路径的目标
- CMake为什么通过相对路径链接外部库
- Boost Filesystem flowly_caronical不会在没有父文件夹的情况下解决相对路径
- 如何将共享库与具有相对路径的 CMake 链接
- 相对路径中的错误
- C 能够以其完整路径打开代码::块中的文件,但不能以相对路径作为命令行参数打开文件
- 如何在基于QT的Autodesk Maya插件中使用相对路径
- 如何使用QT程序中的默认应用程序打开使用相对路径的PDF
- Visual Studio单元使用具有相对路径的文件测试
- 在 Visual Studio 中为 SFML 设置相对路径
- 如何配置MSVC以使用__FILE__显示头文件的相对路径