Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All
Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here.

Low-Level I/O 

These functions invoke the operating system directly for lower-level operation than that provided by stream I/O. Low-level input and output calls do not buffer or format data.

Low-level routines can access the standard streams opened at program startup using the following predefined file descriptors.

Stream File Descriptor

stdin

0

stdout

1

stderr

2

Low-level I/O routines set the errno global variable when an error occurs. You must include STDIO.H when you use low-level functions only if your program requires a constant that is defined in STDIO.H, such as the end-of-file indicator (EOF).

Low-Level I/O Functions
Function Use

_close

Close file

_commit

Flush file to disk

_creat, _wcreat

Create file

_dup

Return next available file descriptor for given file

_dup2

Create second descriptor for given file

_eof

Test for end of file

_lseek, _lseeki64

Reposition file pointer to given location

_open, _wopen

Open file

_read

Read data from file

_sopen, _wsopen, _sopen_s, _wsopen_s

Open file for file sharing

_tell, _telli64

Get current file-pointer position

_umask, _umask_s

Set file-permission mask

_write

Write data to file

_dup and _dup2 are typically used to associate the predefined file descriptors with different files.

Community Additions

ADD
Show:
© 2015 Microsoft