Unix-system-calls-pread

提供:Dev Guides
移動先:案内検索

[top]#

|http://www.google.com/[Google] | a|

Web This Site
  • 初心者向けのUnix *
  • 高度なUnix *

選択した読書

Copyright©2014 by finddevguides

[cols=",,,,,,,",]

| |  Home   | |  References   | |  Discussion Forums   | |  About TP  

[width="100%",cols="100%",]

a| == pread()-Unix、Linuxシステムコール

[[File:]] image :http://www.finddevguides.com/images/next.gif [next] image:http://www.finddevguides.com/add- this.gif [AddThisソーシャルブックマークボタン]

広告

NAME

pread、pwrite-指定されたオフセットでファイル記述子の読み取りまたは書き込みを行う

概要

#define _XOPEN_SOURCE 500 #include <unistd.h> ssize_t pread(int fd, void* buf, size_t count, off_t offset); ssize_t pwrite(int fd, const void *buf, size_t count, off_t offset);

説明

*pread* ()は、ファイル記述子_fd_から(ファイルの先頭から)オフセット_offset_にある_count_バイトまでを_buf_で始まるバッファーに読み取ります。 ファイルオフセットは変更されません。
*pwrite* ()は、_buf_から始まるバッファーから_count_バイトまで、オフセット_offset_のファイル記述子_fd_に書き込みます。 ファイルオフセットは変更されません。

_fd_によって参照されるファイルは、シークできる必要があります。

返り値

成功すると、読み書きされたバイト数が返されます(ゼロは pwrite ()の場合は何も書き込まれなかったことを示し、 pread の場合はファイルの終わりを示します)。エラーの場合は-1を返します。この場合、_errno_はエラーを示すように設定されます。

エラー

*pread* ()は失敗し、_errno_を *read* (2)または *lseek* (2)に指定されたエラーに設定します。 *pwrite* ()は失敗し、_errno_を *write* (2)または *lseek* (2)に指定されたエラーに設定する可能性があります。

準拠

POSIX.1-2001。

歴史

*pread* ()および *pwrite* ()システムコールは、バージョン2.1.60でLinuxに追加されました。 i386システムコールテーブルのエントリは2.1.69で追加されました。 libcサポート(システムコールのない古いカーネルでのエミュレーションを含む)は、glibc 2.1で追加されました。

関連項目

[[File:]] image :http://www.finddevguides.com/images/next.gif [next] [[File:]]

広告

|  

[cols="^",]

|Advertisements