正文
fopen函数用法c语言 c++fopen_s函数的用法
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
C语言fopen函数和其参数
fopen()是一个文件I/O 里面的函数 功能是打开一个文件。
其原型是 FILE *fopen(char *filename,char *mode)
返回值 :正常打开 返回指向文件结构体的指针。
失败,返回NULL;
要用这个函数是首先要定义一个 文件指针,例
FILE *fp=NULL;
fp=fopen(“./txt”,"r"); 就是以只读的方式打开当前目录txt这个文件
第一个参数是要打开的文件名
第二个参数是:打开模式 r 只读 , r+ 读写, w只写 ,w+读写, a追加, a+
C语言关于fopen在函数中的使用
那样写没有错
就是这么用的
检查一下文件是否存在,并放在了正确的位置上
C语言fopen函数的使用问题
你把
fp
=
fopen()
加个括号
变成(
fp
=
fopen()
)
注意优先级,==的优先级比=号优先级高,也就是说,他先==判断然后=操作,这是的fp
=
1
,所以失败
C语言里面文件fopen函数有个追加方式打开文件,什么是追加方式呢?
打开文件时以追加方式即可fopen(filename, "ab ")
内容拓展:
一、C语言
1、C语言是一门通用计算机编程语言,应用广泛。C语言fopen函数用法c语言的设计目标是提供一种能以简易fopen函数用法c语言的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
2、尽管C语言提供fopen函数用法c语言了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
3、二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言订定了一套完整的国际标准语法,称为ANSI C,作为C语言最初的标准。
二、fopen函数
1、fopen函数是在当前目录下打开一个文件,其调用的一般形式为:文件指针名=fopen(文件名,使用文件方式);
2、"文件指针名"必须是被说明为FILE 类型的指针变 量;
3、"文件名"是被打开文件的文件名;
4、"使用文件方式"是指文件的类型和操作要求;
5、"文件名"是字符串常量或字符数组。
C语言fopen函数中文件打开方式(参数值)
C语言fopen函数用于打开文件。
函数原型:FILE
*
fopen(const
char
*
path,const
char
*
mode);
参数:
path
字符串类型,表示文件所在的路径,包括文件名
mode
打开文件的模式、
返回值:文件顺利打开后,指向该流的文件指针就会被返回。如果文件打开失败则返回NULL,并把错误代码存在errno
中。
mode:
r
以只读方式打开文件,该文件必须存在。
r+
以可读写方式打开文件,该文件必须存在。
rb+
读写打开一个二进制文件,允许读写数据,文件必须存在。
w
打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。
w+
打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。
a
以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。(EOF符保留)
a+
以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。
(原来的EOF符不保留)
wb
只写打开或新建一个二进制文件;只允许写数据。
wb+
读写打开或建立一个二进制文件,允许读和写。
ab+
读写打开一个二进制文件,允许读或在文件末追加数据。
实例:
#includestdio.h
#define
F_PATH
"d:\\myfile\\file.dat"
int
main(void)
{
FILE*fp=NULL;//需要注意
fp=fopen(F_PATH,"r");
if(NULL==fp)
{
return
-1;//要返回错误代码
}
fclose(fp);
fp=NULL;//需要指向空,否则会指向原打开文件地址
return
0;
}
c语言fopen怎么用
fopen一般与buf搭配使用,通过与fgets函数配合使用,将文件中的字符串读到buf中,这样达到读出文件内容的目的代码如下:
FILE tf=NULL;//定义一个文件指着,用于判断fopen是否打开成功,并初始化为空;
char buf[1024]={0};//定义一个长度为1024的数组,用于存放文件的内容;
tf=fopen("c:\example.txt","r");//打开c盘指定文件,并以只读的形式打开,避免破坏原文件,将fopen的返回值放在指针tf中,若打开成功,则返回成功的指针,打开不成功则返回空;
if(tf != NULL)//判断是否成功,不等于NULL则表示成功;
{
if(fgets(buf,1024,tf) != NULL)//将指向c盘文件的指针的内容赋给buf,长度为1024,并判断是否获取成功;
{
printf("buf=%s\n",buf);//将成功获取的字符串显示在屏幕上;
}
}
fclose(tf);//将已打开的文件关闭;
扩展资料:
fopen的工作原理
FILE *fp;
fp=fopen("filename.txt","w");
首先检测filename.txt是否存在,如果不存在则在磁盘 创建该文件,然后在内存开辟区域(应该是缓冲区)准备写该文件
调用fclose时,将内存中的内容写入到磁盘中去
测试(filename.txt不存在):
#include stdio.h
#include stdlib.h
int main()
{
FILE *fp1,*fp2;
fp1=fopen("filename.txt","w");
if(fp1==NULL)
{
printf("fp1 open failed!/n");
}
else
{
printf("fp1 open success!/n");
}
fp2=fopen("filename.txt","r");
if(fp2==NULL)
{
printf("fp2 open failed!/n");
}
else
{
printf("fp2 open success!/n");
}
fclose(fp1);
fclose(fp2);
return 0;
}
输出:
fp1 open success!
fp2 open success!
说明文件操作不是互斥的,而且以写方式打开文件,如果文件不存在,先在磁盘创建该文件
加入写入语句:
#include stdio.h
#include stdlib.h
int main()
{
FILE *fp1,*fp2;
fp1=fopen("filename.txt","w");
if(fp1==NULL)
{
printf("fp1 open failed!/n");
}
else
{
printf("fp1 open success!/n");
fputs("abcdef",fp1);
}
fp2=fopen("filename.txt","w");
if(fp2==NULL)
{
printf("fp2 open failed!/n");
}
else
{
printf("fp2 open success!/n");
fputs("ABC/n",fp2);
}
fclose(fp1);
fclose(fp2);
return 0;
}
打开filename.txt文件:
ABC
f
说明后关闭的,刷新了磁盘数据
参考资料来源:fopen-百度百科
关于fopen函数用法c语言和c++fopen_s函数的用法的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。