找不到要在 c 中读取的 .txt 文件

标签 c macos file

我是 C 新手,我正在使用 OS X 10.9.5。我正在使用 Code::Blocks 并尝试了 Xcode,但使用它们似乎不可能打开和读取简单的 .txt 文件,除非我打开终端并自己找到该文件(使用 cd ...)。 .txt 和 .c 文件位于同一文件夹中。程序如何自动打开文本文件? 这是我的代码:

#include <stdio.h>

int main () {

    FILE *fp;
    char name[50], city [50];
    int age;

    if((fp=fopen("text.txt","r"))) {
        //printf("yes\n");
    } else {
        printf("doesnt open\n");
    }

    while (fscanf(fp,"%s\t%d\t%s\n",name, &age, city)!=EOF) {
        printf("name=%s age=%d city=%s\n",name,age,city);
    }

    fclose (fp);


    return 0;

}

最佳答案

您的工作目录与您期望的不同。如果您通过 IDE 运行应用程序,IDE 很可能会为您的应用程序设置一个工作目录。

获取当前工作目录(用于检查):How to get the current directory in a C program?

关于找不到要在 c 中读取的 .txt 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26129691/

相关文章:

c - 将共享对象库 (.so) 文件的生成分为两次而不是一次

python - 如何从 C 中找到 Python 函数的参数数量?

macos - 如何将执行命令的时间添加到 Mac 上的终端? (改变格式)

swift - 如何在同一项目中使用其他 swift 文件(同一目标)的函数

file - JVM 属性 -Dfile.encoding=UTF8 还是 UTF-8?

c - Android 中的套接字问题

c - fork + wait 在 OSX 上获取 EINTR

java - 在 SWT 中使用 SplashScreen-Image 时,如何使 Java 启动画面消失?

apache - 让 SSL 在 OSX 上与 Apache/Passenger 一起工作

Javascript 上传多个自动生成的文件表单