使用fopen打开绝对路径下的文件,没有问题,值得注意的是路径中可以使用/也可以使用\\,在vs2010中都能正确读取。
如果使用相对路径,经常会找不到文件。可能的原因是,对当前目录的认识有误。一般认为,编译后得到的exe文件所在目录即为当前目录,实际上并非如此。在工程中,工程文件所在的目录被认为是当前目录,相对路径应该以该目录为参照物,而与可执行文件的存放目录无关。
更近一步讲,如果在命令行环境下,当前目录表示可执行程序所在的目录。如果在vc中,当前目录表示包含源代码的目录。Metrowerks CodeWarrior中,当前目录表示可执行文件所在的目录。
本文探讨了在不同开发环境中使用相对路径时遇到的问题及原因。指出在VS2010等环境中,相对路径的基准目录是工程文件所在的位置而非编译后的可执行文件位置。并对比了命令行环境与IDE环境下当前目录的区别。
2万+





