我正在尝试让我的c程序更具动态性。它应该用fopen()打开一个文件。显然,fopen不会读取绝对路径。例如,它无法读取此路径:
fopen("/Documents/projects/cs50_radio/broadcast/source/deadinside.mp3", "r")
返回NULL
;然而,
fopen("deadinside.mp3", "r");
返回预期的指针
我想知道是否有可能的方法来读取这样的路径,在其他情况下可能与当前工作目录无关?
答案 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