C语言 fopen()在哪里搜索要读取的文件?

ttcibm8c  于 2023-10-16  发布在  其他
关注(0)|答案(1)|浏览(161)

我只想知道fopen()搜索范围在:

  • a) windows
  • B)类Unix系统,如MacOS和Linux

当被要求打开一个文件进行阅读,或阅读和写,甚至只是写,与相对路径,例如。File.txt。我需要一个解决文本和二进制文件的答案。
它只扫描当前目录,还是扫描特定的文件夹?
(因为扫描整个磁盘会非常慢,对吗?)

frebpwbc

frebpwbc1#

fopen()根本不扫描它只是打开你告诉它打开的文件。路径可以是绝对路径,也可以是相对于当前目录的路径。这种行为在各个平台上几乎是一样的。
当然,在Windows中路径看起来有点不同(驱动器号,反斜杠而不是斜杠)。
我能想到的一个相关差异是:如果路径以一个驱动器号和一个冒号开始,它将查看另一个驱动器。如果驱动器号和冒号后面没有反斜杠,则位置将相对于该驱动器的当前工作目录(因为Windows会记住每个驱动器号的当前目录)。

相关问题