C语言中要读一个文件需要文件路径么

如题所述

文件不在执行程序的文件夹内,就需要完整的文件路径。在文件夹内,使用文件名即可。

1、C语言标准库提供了一系列文件操作函数。文件操作函数一般以f+单词的形式来命名(f是file的简写),其声明位于stdio.h头文件当中。

例如:fopen、fclose函数用于文件打开与关闭;fscanf、fgets函数用于文件读取;fprintf、fputs函数用于文件写入;ftell、fseek函数用于文件操作位置的获取与设置。一般的C语言教程都有文件操作一章。

扩展资料:

C语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。

尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括一些类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。

顺序结构的程序虽然能解决计算、输出等问题,但不能做判断再选择。对于要先做判断再选择的问题就要使用选择结构。选择结构的执行是依据一定的条件选择执行路径,而不是严格按照语句出现的物理顺序。

选择结构的程序设计方法的关键在于构造合适的分支条件和分析程序流程,根据不同的程序流程选择适当的选择语句。选择结构适合于带有逻辑或关系比较等条件判断的计算,设计这类程序时往往都要先绘制其程序流程图

然后根据程序流程写出源程序,这样做把程序设计分析与语言分开,使得问题简单化,易于理解。程序流程图是根据解题分析所绘制的程序执行流程图。

参考资料来源:百度百科-C语言

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-10-05

如果文件不在执行程序的文件夹内,就需要完整的文件路径。如果在文件夹内,使用文件名即可。

1、C语言标准库提供了一系列文件操作函数。文件操作函数一般以f+单词的形式来命名(f是file的简写),其声明位于stdio.h头文件当中。例如:fopen、fclose函数用于文件打开与关闭;fscanf、fgets函数用于文件读取;fprintf、fputs函数用于文件写入;ftell、fseek函数用于文件操作位置的获取与设置。一般的C语言教程都有文件操作一章,可以找本教材进一步学习。
2、例程:

#include<stdio.h>
int a;
char b,c[100];
int main(){
    FILE * fp1 = fopen("input.txt", "r");//打开输入文件,在同一个文件夹内
    FILE * fp2 = fopen("output.txt", "w");//打开输出文件,在同一个文件夹内
    if (fp1==NULL || fp2==NULL) {//若打开文件失败则退出
        puts("不能打开文件!");
        rturn 0;
    }
    fscanf(fp1,"%d",&a);//从输入文件读取一个整数
    b=fgetc(fp1);//从输入文件读取一个字符
    fgets(c,100,fp1);//从输入文件读取一行字符串
    
    printf("%ld",ftell(fp1));//输出fp1指针当前位置相对于文件首的偏移字节数
    
    fputs(c,fp2);//向输出文件写入一行字符串
    fputc(b,fp2);//向输出文件写入一个字符
    fprintf(fp2,"%d",a);//向输出文件写入一个整数
    
    fclose(fp1);//关闭输入文件
    fclose(fp2);//关闭输出文件,相当于保存
    return 0;
}

第2个回答  推荐于2017-09-09
需要,如果你想要打开不是当前编译文件夹下的文件的时候,就要路径
例如
FILE *fp;
fp=fopen("student.txt" "a");
就是打开你当前编译文件下的student.txt文档,但是不过你要打开别的就应该加路径
例如
fp=fopen("C:\\Users\\hust\\student.txt","a");

就是这样,但是要记住打开的时候\\要用双反斜线,因为单个反斜线为转义符,这样你打不开文件本回答被提问者采纳
第3个回答  2013-06-29
恩,绝对路径需要,如果不加,是在当前路径追问

能给个例子么?

第4个回答  2013-06-29
我觉得需要,你觉得呢???哈哈。。。。。。。。。你学c语言不看课本么???追问

我能说课本上没得么?

追答

你赢了,我从不看课本!!!

C语言中要读一个文件需要文件路径么
文件不在执行程序的文件夹内,就需要完整的文件路径。在文件夹内,使用文件名即可。1、C语言标准库提供了一系列文件操作函数。文件操作函数一般以f+单词的形式来命名(f是file的简写),其声明位于stdio.h头文件当中。例如:fopen、fclose函数用于文件打开与关闭;fscanf、fgets函数用于文件读取;fprintf、fput...

在C语言中,读文件时要将文件放在哪个目录下??
这个如果是在c语言中是根据你读文件那个函数里定义的,如果那里你用绝对地址那你放那都可以,如果用相对地址就放到你c编译器的根目录下面,或者子目录,但是子目录需要在里面指出

C语言读写txt文件
使用C语言的文件操作函数可以读写txt文件,如果使用相对路径,文件必须放在程序相同的文件夹内。1、C语言标准库提供了一系列文件操作函数。文件操作函数一般以f+单词的形式来命名(f是file的简写),其声明位于stdio.h头文件当中。例如:fopen、fclose函数用于文件打开与关闭;fscanf、fgets函数用于文件读取;fp...

C语言 文件操作,要读取一个txt文件内容
在C语言中,文件操作都是由库函数来完成的。要读取一个txt文件,首先要使用文件打开函数fopen()。fopen函数用来打开一个文件,其调用的一般形式为: 文件指针名=fopen(文件名,使用文件方式) 其中,“文件指针名”必须是被说明为FILE 类型的指针变量,“文件名”是被打开文件的文件名。 “使用文件方式...

C语言如何读取文件?
一个文件流指针对应一个打开的文件,因为你要同时操作两个文件,所以要用两个文件流指针 ,就像你要同时操作两个箱子一样.这个程序可以这样理解:有两个箱子,fp1,fp2;打开箱子fp1,fp2,一次拿出1024个东西看一下,同时将他放到第二个箱子fp2里,至到箱子的东西完全拿出来,然后关闭两个箱子.例子都是差不多...

在C语言读文件时,如何说明是当前目录?
直接fopen("abc.txt","r");就可以了。不过要注意一点,如果你使用VC编译调试,那么在里面点!号运行的时候,那个当前目录是指工程目录,而不是Debug文件夹里面。当然,你直接把exe文件拿出来用的话就是一般意义下的当前目录了。

C语言怎么读取某一文件夹下的所有文件夹和文件?
用C语言读取目录中的文件名的方法:1、如果是在window环境下,可以用一下方法:使用stdlib.h头文件声明的system()函数,调用系统命令dir,把c:目录下文件列表写入文件dir.txt中 2、使用dirent.h头文件中声明的opendir(),readdir()函数;3、如果没有dirent.h,可以使用io.h头文件中声明的_findfirst(),...

直接运行c语言生成的.exe文件,要打开并读取一个未知路径文件。
老师在运行时,如果文件就在你的程序所在目录下,则你打开文件命令不需要加路径:fopen("your_file.txt", "r" );如果文件不在目录下,则,你需要让老师在运行时输入文件路径,不然,程序是不知道该去哪里读文件路径的。

c语言中的要操作的文件应该放在哪儿呢,是不是放在哪儿都行啊,那位高...
我写一个简单a+b的程序,输入文件为test.txt,这个文件中有两个整数,当在编译器(VC6.0)中运行该程序时,test.txt放在Debug的上层目录,即*.cpp文件所在的目录。如果直接运行*.exe,那么放在*.exe目录下,即Debug目录下。 还有,你如果指明了路径,就要放在路径指定的目录。include <stdio.h> voi...

C语言编程~~读入一个txt文件,输出时要将其中的空行过滤掉!高人帮忙...
把需要读入一个txt文件放在源文件的目录下就可以了 ,并且把代码里的“源文件名”相应改下就可以了 include <stdio.h> int main(){ FILE *A=NULL,*B=NULL;int ch;A=fopen("d:\\\\源文件名.txt","rb");if(!A)exit(-1);B=fopen("d:\\\\输出文件(如果没有可以随便起一个名字).txt",...

相似回答