fopen()

时间:2016-12-15 23:46:20

标签: c fopen filepath

我正在尝试让我的c程序更具动态性。它应该用fopen()打开一个文件。显然,fopen不会读取绝对路径。例如,它无法读取此路径:

fopen("/Documents/projects/cs50_radio/broadcast/source/deadinside.mp3", "r")
  

返回NULL

;然而,

fopen("deadinside.mp3", "r");
  

返回预期的指针

我想知道是否有可能的方法来读取这样的路径,在其他情况下可能与当前工作目录无关?

1 个答案:

答案 0 :(得分:4)

fopen()可以将绝对路径作为参数。您是在基于unix / linux的操作系统还是在Windows上工作?可能发生的事情是你错了路。如果您使用的是mac,它看起来就像你一样,那么正确的路径可能是

~/Documents/projects/cs50_radio/broadcast/source/deadinside.mp3

但您可以通过cd进入目录并输入pwd

进行验证

如果你在Windows上,你的路径肯定是错的,因为窗口看起来更像是这样:

C:\Documents\projects\cs50_radio\broadcast\source\deadinside.mp3