fscanf无法在C中的Xcode中读取文件

时间:2013-03-02 16:25:22

标签: c xcode file scanf

我正在尝试让我的xcode在文件中读取,但我不断获得“构建成功”,然后(11db)作为输出。

我已将一个名为“sudokode.in”的文件保存到我的桌面,这就是我要打开的内容。

该文件中只有一个整数 19

我只想将19打印到屏幕上。

我以前从来没有让我的Xcode读取文件,所以我不知道我是否必须设置它,或者是什么。我在网上搜索过,并没有找到解决这个问题的真正方法。

我很感激帮助。

int main() {

int num;

FILE* ifp = fopen("sudokode.in", "r");
fscanf(ifp, "%d", &num);

printf("%d", num);

return 0;
}

2 个答案:

答案 0 :(得分:4)

该文件可能不存在。如果是这种情况,ifp将为NULL,请检查:

int main() {

int num;

FILE* ifp = fopen("sudokode.in", "r");
if (ifp == NULL) {
    printf("Oops, this file doesn't exist!\n");
    return -1;
}
fscanf(ifp, "%d", &num);

printf("%d", num);

return 0;
}

您的程序仅在从存储sudoke.in的同一目录运行时才有效。您可以使用绝对路径(例如/User/John/Desktop/sudoke.in)。

答案 1 :(得分:0)

要设置您的工作目录以读写Xcode中的文件,请转到产品->方案->编辑方案,然后单击。

然后,单击“工作目录”旁边的复选框,并使用下面字段末尾的灰色文件图标设置工作目录。

我在Xcode上的c中找到了关于如何针对基本命令行项目执行此操作的很好的解释:

https://www.meandmark.com/blog/2013/12/setting-the-current-working-directory-for-xcode-command-line-projects/