秋加数码网

r,w,a+,r+在C语言中各自表示什么意思?(fopen s错误返回值)

  1. r,w,a+,r+在C语言中各自表示什么意思?
  2. eof函数怎么用?
  3. open是什么级别?
  4. c语言库函数中有error函数吗?

r,w,a+,r+在C语言中各自表示什么意思?

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

1)文件使用方式由r,w,a,t,b,+六个字符拼成,各字符的含义是: r(read): 读 w(write): 写 +: 读和写 a(append): 追加 t(text): 文本文件,可省略不写 b(banary): 二进制文件 2)用“r”打开一个文件时,该文件必须已经存在,且只能从该文件读出。

r,w,a+,r+在C语言中各自表示什么意思?(fopen s错误返回值)-图1

r,w,a+,r+在C语言中各自表示什么意思?(fopen s错误返回值)-图2

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

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

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

r,w,a+,r+在C语言中各自表示什么意思?(fopen s错误返回值)-图3

eof函数怎么用?

使用步骤

在达到文件末尾之前,EOF函数返回False。 打开文件进行 随机 或 二 进制访问时 ,EOF 返回 False, 直到最后执行的 Get 语句无法读取整个记录。

打开文件进行 二进制 访问后,尝试使用 Input 函数读取文件,直到 EOF 返回 True 时生成错误。 使用 INPUT 读取二进制文件时,使用LOF和Loc函数而不是EOF,或使用 EOF 函数时使用Get。 打开"输出"文件后,EOF始终返回True。

r,w,a+,r+在C语言中各自表示什么意思?(fopen s错误返回值)-图4

代码示例:

ofstream ofs("a.txt");

int n = 1;

while (--n) { //不进入循环体

ofs<<n<<"\t";

}

ofs.close();

int x=5,z = 0;

ifstream ifs("a.txt");

while (!ifs.eof())

在C语言中,`eof()`函数用于检测是否已经达到了文件结束的位置。在读取文件时,通常使用`feof()`函数来判断是否已经到达文件结尾。

`feof()`函数需要一个文件指针作为参数,并返回一个整型值。如果已经到达文件结尾,则返回非零值(通常为1),否则返回0。

下面是一个简单的示例程序,演示了如何使用`feof()`函数来检测文件结尾:

```c

#include <stdio.h>

int main() {

open是什么级别?

open属于低级IO,fopen是高级IO。

open返回一个文件描述符(用户程序区的),fopen返回一个文件指针。

open无缓冲,fopen有缓冲。

open与 read, write 等配合使用, fopen与 fread,open与 read, write 等配合使用,

fopen是在open的基础上扩充而来的,在大多数情况下用fopen。

这个是初级,比较级 more open 最高级 most open open 

c语言库函数中有error函数吗?

c语言标准库函数里没有error函数。C语言对异常的处理确实不够好,大多的时候都需要人工除错。

有几个类似的函数,分别处理各种情况下的异常:

ferror函数:在调用各种输入输出函数(如 putc.getc.fread.fwrite等)时,如果出现错误,除了函数返回值有所反映外,还可以用ferror函数检查。 它的一般调用形式为 ferror(fp);如果ferror返回值为0(假),表示未出错。如果返回一个非零值,表示出错。应该注意,对同一个文件 每一次调用输入输出函数,均产生一个新的ferror函 数值,因此,应当在调用一个输入输出函数后立即检 查ferror函数的值,否则信息会丢失。在执行fopen函数时,ferror函数的初始值自动置为0。在库函数中有个errno变量,每个errno值对应着以字符串表示的错误类型。当你调用"某些"函数出错时,该函数已经重新设置了errno的值。perror函数只是将你输入的一些信息和现在的errno所对应的错误一起输出。

perror函数: 用来将上一个函数发生错误的原因输出到标准设备(stderr)。参数 s 所指的字符串会先打印出,后面再加上错误原因字符串。此错误原因依照全局变量errno 的值来决定要输出的字符串。

strerror函数:用来 从错误号码 查 用英文表达的错误内容,返回指针,指向这段英文字符串。如果你不知道错误号,那么在出错发生时,及时用 errno 的当前值 作参数,打印这段字符串。

到此,以上就是小编对于fopen发生错误的返回值的问题就介绍到这了,希望介绍的4点解答对大家有用,有任何问题和不懂的,欢迎各位老师在评论区讨论,给我留言。

分享:
扫描分享到社交APP
上一篇
下一篇