cread

时间:2023-11-20 06:14:00 编辑:大鹏 来源:长期打折网

C语言中read函数的详细解说?,C语言中的read和write怎么用?,C语言中的read和write怎么用?...

C语言中read函数的详细解说?
C语言中read函数的详细解说?
提示:

C语言中read函数的详细解说?

read函数(fread)。 read函数负责从文件句柄中读取指定数量的字节,并将这些字节放在标量型变量中。读者如果熟悉C的标准I/O函数fread的话,就会发现read函数也是以相同方式处理I/O缓冲的。为了提高效率,read函数并不是一次读取一个字节,而是读取一块数据并保存到临时存储区中。然后,C的fread函数与Perl的read函数会从临时缓冲区将数据一次一个字节地传送给程序。(sysread函数可用于模拟C的底层I/O函数read。)该函数会返回读取的字节总数;或者在发生错误时,返回未定义的数字。如果碰到了EOF(文件结束符),则返回0。 print函数(而不是write函数)负责输出read函数返回的实际字节。print函数类似于C中的fwrite函数。

C语言中的read和write怎么用?
提示:

C语言中的read和write怎么用?

1.纠正:read和write是UNIX或者一些类UNIX系统,比如LINUX系统中使用的,称为LINUX系统函数。这种函数只能在特定的操作系统下使用,可移植性差。fread和fwrite是C库函数。这种函数基本在任何操作系统都能使用,可移植性高。2.基础知识介绍只介绍LINUX系统函数,常用的有creat,open,close,read,write,lseek,access,一般用于文件编程3.如何使用谈到如何使用就必须说到另一个知识,文件描述符(file description),是一个非负数。函数原型:int read(int fd, const void *buf, size_t length)功能: 从文件描述符fd所指向的文件中读取length个字节到buf所指向的缓存区中,返回值为实际读取的字节数int write(int fd, const void *buf, size_t length)功能: 把length个字节从buf所指向的缓存区中写到件描述符fd所指向的文件中,返回值为实际写入的字节数 例子:#define LENGTH 1024#define BUFFES_SIZE 1024int n1, n2;int fd1, fd2;int buffer[BUFFES_SIZE];fd1 = open( "HEllo1.txt", O_RDWR | O_CREAT, O_IRUSE | O_IWUSR);fd2 = open( "HEllo2.txt", O_RDWR | O_CREAT, O_IRUSE | O_IWUSR);n1 = read( fd1, buffer, LENGTH);n2 = write( fd2, buffer, n1); 好了累死了,答案完全原创,希望对你有帮助

C语言中的read和write怎么用?
提示:

C语言中的read和write怎么用?

1.纠正:

read和write是UNIX或者一些类UNIX系统,比如LINUX系统中使用的,称为LINUX系统函数。这种函数只能在特定的操作系统下使用,可移植性差。

fread和fwrite是C库函数。这种函数基本在任何操作系统都能使用,可移植性高。

2.基础知识介绍

只介绍LINUX系统函数,常用的有creat,open,close,read,write,lseek,access,一般用于文件编程

3.如何使用

谈到如何使用就必须说到另一个知识,文件描述符(file
description),是一个非负数。

函数原型:

int
read(int
fd,
const
void
*buf,
size_t
length)

功能:


从文件描述符fd所指向的文件中读取length个字节到buf所指向的缓存区中,返回值为实际读取的字节数

int
write(int
fd,
const
void
*buf,
size_t
length)

功能:


把length个字节从buf所指向的缓存区中写到件描述符fd所指向的文件中,返回值为实际写入的字节数



例子:

#define
LENGTH
1024

#define BUFFES_SIZE
1024

int
n1,
n2;

int
fd1,
fd2;

int
buffer[BUFFES_SIZE];

fd1
=
open(
"HEllo1.txt",
O_RDWR
|
O_CREAT,
O_IRUSE
|
O_IWUSR);

fd2
=
open(
"HEllo2.txt",
O_RDWR
|
O_CREAT,
O_IRUSE
|
O_IWUSR);

n1 =
read(
fd1,
buffer, LENGTH);

n2 =
write(
fd2,
buffer, n1);



好了累死了,答案完全原创,希望对你有帮助

上一篇:eligible
下一篇:c轮融资
相关文章
最新资讯
热门资讯