如何在Xcode中用C执行文件I / O?

时间:2011-09-14 15:05:53

标签: c file-io

我使用Xcode作为C的IDE。

#include <stdio.h>

int main (int argc, const char * argv[])
{
    FILE *file;
    int numberTest = 0;
    file = fopen("fileTest.dat", "r");
    if (file == NULL)
    {
        printf("File not found!\n");
    }
    fscanf(file, "%d", &numberTest);
    printf("I read the number: %d\n", numberTest);
    fclose(file);
    return 0;
}

该文件位于我的Xcode包中,与HDD中项目的其余部分位于同一文件夹中。问题是fopen()一直返回NULL。

2 个答案:

答案 0 :(得分:4)

你假设在启动可执行文件时文件位于当前工作目录中,它可能不是,并且无论如何总是一个坏的假设,即使它在某些情况下恰好是真的。 / p>

作为快速修复,您现在可以硬编码文件的绝对路径,例如

file = fopen("/Users/me/Desktop/fileTest.dat", "r");

答案 1 :(得分:0)

找不到该文件,因为在运行可执行文件时它不在您的路径上。您需要将文件添加到目标中,以便在构建源时将其复制到构建目录。