pwrite.c

来自「Newlib 嵌入式 C库 标准实现代码」· C语言 代码 · 共 47 行

C
47
字号
/* Linux version of pwrite so we can have a weak alias */#include <_ansi.h>#include <unistd.h>#include <reent.h>#include <machine/weakalias.h>ssize_t_DEFUN (_pwrite_r, (rptr, fd, buf, n, off),     struct _reent *rptr _AND     int fd _AND     _CONST _PTR buf _AND     size_t n _AND     off_t off){  off_t cur_pos;  _READ_WRITE_RETURN_TYPE num_written;    if ((cur_pos = _lseek_r (rptr, fd, 0, SEEK_CUR)) == (off_t)-1)    return -1;  if (_lseek_r (rptr, fd, off, SEEK_SET) == (off_t)-1)    return -1;  num_written = _write_r (rptr, fd, buf, n);  if (_lseek_r (rptr, fd, cur_pos, SEEK_SET) == (off_t)-1)    return -1;  return (ssize_t)num_written;}#ifndef _REENT_ONLYssize_t_DEFUN (__libc_pwrite, (fd, buf, n, off),     int fd _AND     _CONST _PTR buf _AND     size_t n _AND     off_t off){  return _pwrite_r (_REENT, fd, buf, n, off);}weak_alias(__libc_pwrite,pwrite)#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?