在Xcode中不需要使用文件的完整路径吗?[C/C+;+;] 在Xcode中,每当我想使用一个文件(C或C++专用)时,我必须指定文件的完整路径,而对于GCC或G++,如果与引用的代码在同一目录中,则不必。p>

在Xcode中不需要使用文件的完整路径吗?[C/C+;+;] 在Xcode中,每当我想使用一个文件(C或C++专用)时,我必须指定文件的完整路径,而对于GCC或G++,如果与引用的代码在同一目录中,则不必。p>,c++,c,xcode,C++,C,Xcode,这有什么原因吗?如果是这样的话,有没有办法修复它?问题不在于“XCode”不接受相对路径。问题是您的代码的当前工作目录与您认为的不同。如注释所述,您可以使用chdir到达文件所在的位置,或者使用考虑currend工作目录的相对路径(您可以使用getcwd()获取当前工作目录) 当您在命令行上使用gcc或g++时,您可以控制最终应用程序运行的目录。问题不是“XCode”不接受相对路径。问题是您的代码的当前工作目录与您认为的不同。如注释所述,您可以使用chdir到达文件所在的位置,或者使用考虑cur

这有什么原因吗?如果是这样的话,有没有办法修复它?

问题不在于“XCode”不接受相对路径。问题是您的代码的当前工作目录与您认为的不同。如注释所述,您可以使用
chdir
到达文件所在的位置,或者使用考虑currend工作目录的相对路径(您可以使用
getcwd()
获取当前工作目录)

当您在命令行上使用
gcc
g++
时,您可以控制最终应用程序运行的目录。

问题不是“XCode”不接受相对路径。问题是您的代码的当前工作目录与您认为的不同。如注释所述,您可以使用
chdir
到达文件所在的位置,或者使用考虑currend工作目录的相对路径(您可以使用
getcwd()
获取当前工作目录)


当您在命令行上使用
gcc
g++
时,您可以控制最终应用程序运行的目录。

原因是存在“当前工作目录”的概念。那么你的 fopen()等从那里开始。在unix中,从shell开始,CWD是您当前的 目录从中的“终端”窗口启动命令行工具的步骤相同 马科斯。但是,当您从Xcode启动或启动应用程序时,CWD就在其他地方


正如我在评论中所说,您可以调用
chdir()
将当前工作目录更改为您想要开始的位置。那么您就不需要指定完整路径。

原因是有一个“当前工作目录”的概念。那么你的 fopen()等从那里开始。在unix中,从shell开始,CWD是您当前的 目录从中的“终端”窗口启动命令行工具的步骤相同 马科斯。但是,当您从Xcode启动或启动应用程序时,CWD就在其他地方


正如我在评论中所说,您可以调用
chdir()
将当前工作目录更改为您想要开始的位置。然后不需要指定完整路径。

单击导航器上方的小文件夹图标,即XCode窗口左侧的面板。这将让您看到哪些文件和产品是项目的一部分。这里有一个文件夹,上面写着“产品”。点击左侧的三角形展开该文件夹。您将看到您的可执行文件(图标看起来像一个终端窗口)。控件单击该按钮并选择“在Finder中显示”以打开实际包含可执行文件的文件夹。这是您需要文件所在的目录,以便XCode能够像GCC那样找到它们

单击导航器上方的小文件夹图标,即XCode窗口左侧的面板。这将让您看到哪些文件和产品是项目的一部分。这里有一个文件夹,上面写着“产品”。点击左侧的三角形展开该文件夹。您将看到您的可执行文件(图标看起来像一个终端窗口)。控件单击该按钮并选择“在Finder中显示”以打开实际包含可执行文件的文件夹。这是您需要文件所在的目录,以便XCode能够像GCC那样找到它们

可以调用chdir()将当前工作目录更改为要启动的目录。那么你就不需要指定完整路径了。你能告诉我你是如何“使用”一个文件的吗?有无数种方法可以在Xcode中使用文件,我从来没有手动指定过路径。如果您有一个控制台应用程序,并且您的程序试图打开一个文件,则需要指定绝对路径或相对路径,该路径取决于环境和当前工作目录。获取此路径需要依赖于系统的函数。感谢您的评论。我的意思是在文件上使用
std::ifstream
std::ofstream
。工具栏左上方的“运行”按钮右侧是“活动方案”下拉列表。点击一下。2.选择“编辑方案”3。在左侧列表中选择“运行”目标。4.选择右侧窗格中的“选项”选项卡。5.选中“使用自定义工作目录”复选框。6.填写从IDE启动时希望程序使用的工作目录的完整路径(我使用我的主用户目录)。不幸的是,“使用自定义工作目录”复选框在Xcode 5.0.1中似乎不起作用。至少根据打印“/”的“(lldb)脚本import os;print os.getcwd()”。您可以调用chdir()将当前工作目录更改为要启动的目录。那么你就不需要指定完整路径了。你能告诉我你是如何“使用”一个文件的吗?有无数种方法可以在Xcode中使用文件,我从来没有手动指定过路径。如果您有一个控制台应用程序,并且您的程序试图打开一个文件,则需要指定绝对路径或相对路径,该路径取决于环境和当前工作目录。获取此路径需要依赖于系统的函数。感谢您的评论。我的意思是在文件上使用
std::ifstream
std::ofstream
。工具栏左上方的“运行”按钮右侧是“活动方案”下拉列表。点击一下。2.选择“编辑方案”3。在左侧列表中选择“运行”目标。4.选择右侧窗格中的“选项”选项卡。5.选中“使用自定义工作目录”复选框。6.填写从IDE启动时希望程序使用的工作目录的完整路径(我使用我的主用户目录)。不幸的是,“使用定制工作”