问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c语言fopen("room","w+") 第二个参数的详解

发布网友 发布时间:2022-04-21 07:54

我来回答

2个回答

热心网友 时间:2023-09-13 12:37

文件的打开(fopen函数)
fopen函数用来打开一个文件,其调用的一般形式为:

文件指针名=fopen(文件名,使用文件方式);

其中,

“文件指针名”必须是被说明为FILE 类型的指针变量;

“文件名”是被打开文件的文件名;

“使用文件方式”是指文件的类型和操作要求。

“文件名”是字符串常量或字符串数组。

例如:

FILE *fp;

fp=("file a","r");

其意义是在当前目录下打开文件file a,只允许进行“读”操作,并使fp指向该文件。

又如:

FILE *fphzk

fphzk=("c:\\hzk16","rb")

其意义是打开C驱动器磁盘的根目录下的文件hzk16,这是一个二进制文件,只允许按二进制方式进行读操作。两个反斜线“\\ ”中的第一个表示转义字符,第二个表示根目录。

使用文件的方式共有12种,下面给出了它们的符号和意义。

文件使用方式
意义

“rt”
只读打开一个文本文件,只允许读数据

“wt”
只写打开或建立一个文本文件,只允许写数据

“at”
追加打开一个文本文件,并在文件末尾写数据

“rb”
只读打开一个二进制文件,只允许读数据

“wb”
只写打开或建立一个二进制文件,只允许写数据

“ab”
追加打开一个二进制文件,并在文件末尾写数据

“rt+”
读写打开一个文本文件,允许读和写

“wt+”
读写打开或建立一个文本文件,允许读写

“at+”
读写打开一个文本文件,允许读,或在文件末追加数据

“rb+”
读写打开一个二进制文件,允许读和写

“wb+”
读写打开或建立一个二进制文件,允许读和写

“ab+”
读写打开一个二进制文件,允许读,或在文件末追加数据

对于文件使用方式有以下几点说明:

1) 文件使用方式由r,w,a,t,b,+六个字符拼成,各字符的含义是:

r(read): 读

w(write): 写

a(append): 追加

t(text): 文本文件,可省略不写

b(banary): 二进制文件

+: 读和写

2) 凡用“r”打开一个文件时,该文件必须已经存在,且只能从该文件读出。

3) 用“w”打开的文件只能向该文件写入。若打开的文件不存在,则以指定的文件名建立该文件,若打开的文件已经存在,则将该文件删去,重建一个新文件。

4) 若要向一个已存在的文件追加新的信息,只能用“a”方式打开文件。但此时该文件必须是存在的,否则将会出错。

5) 在打开一个文件时,如果出错,fopen将返回一个空指针值NULL。在程序中可以用这一信息来判别是否完成打开文件的工作,并作相应的处理。因此常用以下程序段打开文件:

6) if((fp=fopen("c:\\hzk16","rb")==NULL)

{

printf("\nerror on open c:\\hzk16 file!");

getch();

exit(1);

}

这段程序的意义是,如果返回的指针为空,表示不能打开C盘根目录下的hzk16文件,则给出提示信息“error on open c:\ hzk16 file!”,下一行getch()的功能是从键盘输入一个字符,但不在屏幕上显示。在这里,该行的作用是等待,只有当用户从键盘敲任一键时,程序才继续执行,因此用户可利用这个等待时间阅读出错提示。敲键后执行exit(1)退出程序。

7) 把一个文本文件读入内存时,要将ASCII码转换成二进制码,而把文件以文本方式写入磁盘时,也要把二进制码转换成ASCII码,因此文本文件的读写要花费较多的转换时间。对二进制文件的读写不存在这种转换。

8) 标准输入文件(键盘),标准输出文件(显示器),标准出错输出(出错信息)是由系统打开的,可直接使用。

热心网友 时间:2023-09-13 12:37

"W+",是可读可写的方式

mode may be any of the following:

'r' - Open for reading only; place the file pointer at the beginning of the
file.

'r+' - Open for reading and writing; place the file pointer at the beginning
of the file.

'w' - Open for writing only; place the file pointer at the beginning of the
file and truncate the file to zero length. If the file does not exist,
attempt to create it.

'w+' - Open for reading and writing; place the file pointer at the beginning
of the file and truncate the file to zero length. If the file does not
exist, attempt to create it.

'a' - Open for writing only; place the file pointer at the end of the file.
If the file does not exist, attempt to create it.

'a+' - Open for reading and writing; place the file pointer at the end of
the file. If the file does not exist, attempt to create it.
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
联想E盘不见了怎么办? 电脑e盘不见了怎么恢复?6个步骤找回e盘 五一去河源万绿湖游玩,需要携带哪些物品? 五一假期,旅行必带的物品是什么 建行办新卡用了新手机号,旧卡就自动绑了信号 请问电磁炉热敏电阻阻值是多少 电磁炉换电阻多少钱 电磁炉配件电阻多少钱 电磁炉510K大电阻多少钱一个 更换电磁炉电阻多少钱 c语言fopen怎么用 C语言fopen函数中文件打开方式(参数值) fopen的参数rb+和wb+有什么区别?C++ 可作为函数 fopen 中第一个参数的正确格式? C语言fopen函数和其参数 网易将军令怎么强行解绑? 手机版将军令怎样增加绑定 手机将军令能一个手机号能激活几个将军令 我的将军令在网易大神上面解除绑定了,但是上所有的网易游戏都还是要验证,到底怎么解除啊? 手机将军令怎么绑定20个号 网易手机将军令如何解绑 一个网易的账号可以同时绑定两个将军令吗? “网易将军令”能够绑定哪些帐号或产品? 梦幻西游 手机将军令能绑定几个号? 网易将军令怎么绑定 怎么绑定网易将军令? 《将军令》能绑几个号? 高中地理教师资格证怎么考 高中教师资格证难考吗? 高中美术老师教师资格证怎么考? 想办一个中式婚礼,大家给点建议 fopen函数用法 C语言中fopen函数第一个参数的问题 fopen的第一个路径参数能用变量吗 fopen和fclose函数的返回值是多少? windows和linux fopen参数的区别 fopen_s的函数参数 fopen 的参数如果没有b是不是就是以文本方式打开? c语言fopen函数问题 如何用C语言fopen函数实现这样的文件打开功能? fopen的用法是什么? c++中fopen函数读文件怎么用文件数据? 可作为函数 fopen 中第一个参数的正确格式? 如何洗掉牛仔裤上的墨水迹 牛仔裤上的墨汁污渍怎么才能洗掉? 怎样去除牛仔裤上的墨迹? 如果墨水滴到牛仔裤上了 该怎么清洗? 牛仔裤上的碳素黑墨水怎么洗? 牛仔裤上刚弄到了黑色的墨水,怎么洗掉啊?急!!! 牛仔裤上有油墨怎么洗?