c++ - C语言文件读写基本问题
怪我咯
怪我咯 2017-04-17 15:06:12
[C++讨论组]

文件读写最简单问题,编译器是Eclipse C++,fopen函数总是返回空指针,怎么回事?

#include <stdio.h>
#include <fstream>
using namespace std;

int main(){
    FILE *fp;
    fp=fopen("1.txt","r+");
    if(fp==NULL){
        printf("there is no character.");
    }
    char buff[255];
    fscanf(fp,"%s",buff);
    printf("%s",buff);
}

文件目录如下

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回复(1)
PHP中文网

因为找不到1.txt文件。也就是程序执行的工作目录并不是src。
你是直接点击Run或者Debug按钮执行的吧?那么点击那个按钮旁的小三角,选择你的Run或Debug Configuration,第二个选项卡里有工作路径,通常是一个预设的变量workspace_loc也就是代表工作空间的目录。

你要么改变设置,要么就把1.txt放那个路径,要么在代码写绝对路径。

另外其实全局变量errno会记录下fopen失败的原因的。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号