C ++ / Windows - 含义:system(" dir \\ b * .dat> tmp.txt")

时间:2015-03-05 03:16:16

标签: c++ windows system

我正在处理一项任务,其中我有一些我将要阅读的.dat文件,这些文件对应于一个看起来很僵硬的图形(听觉节拍看起来如何,但数据更多) )。我的教授给了这个类一个特定的代码行,以便发现当前目录中的所有.dat文件,如下所示:

system("dir \\b *.dat > tmp.txt");

我理解该声明中的大部分内容,但我很好奇"\\b"在那里做了什么,以及是否有必要。

任何人都知道"\\b"正在做什么? 谢谢你!

1 个答案:

答案 0 :(得分:2)

你的教授犯了一个错误的错误:

转义的目录路径说明符将变为

\b

system()调用解析作为参数传递的命令行时。

这将列出当前磁盘系统目录b中的文件/目录。假设您在c:,这相当于致电

> dir c:\b *.dat > tmp.txt
从命令行提示符

如果您打算调用dir with the /B option

  

/ B |使用裸格式(无标题信息或摘要)。

您只是不使用反斜杠(\),而是使用/

system("dir /b *.dat > tmp.txt");
         // ^