2020-12-14

59 阅读1分钟

在这里插入图片描述
如上图,.sln文件是解决方案文件,solution.最上方的BankDemo2017是项目文件夹,也即是下图所示第二季目录处所代表的两个黑色加号。(初学者建议弄清楚,这对于编程体系的理解十分有用)。在主程序中,创建了一个文件流对象fin,并将其与"info.txt"这个文本文件所关联起来。但奇怪的是,运行程序后发现是个乱码(?)通过F11对其分析,发现cmd被赋值为-52,而这在char 型字符所对应的ASCII码中是没有的。
???我中间又试了试fin.open(“info.txt”),发现仍然得出相同的运行结果。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
当我将info.txt放到与项目文件(.vcproj后缀)同级目录下,发现得出了想要的结果’a’

在这里插入图片描述
因此,直接上结论:文件直接通过文件名打开时,打开的是与项目同目录下的该文件,(如果没有则打开失败);如果该文件位于项目所在目录的下一级或者更深的目录,同样也是无法直接通过文件名打开的(通过我的测试发现要加上相对于项目文件的相对路径)
绝对路径:是从盘符开始的路径,形如
C:\windows\system32\cmd.exe
相对路径:是从当前路径开始的路径
(其中.表示当前目录,因此…表示父目录(也即上一级目录),若连续上一级目录则为:
…\…\……,子目录为.\,简记为\