In‡uz bnd Output


The C language does not  ave any I/O capability! You can¢fRcjss files and devices via two groups of functions, these can be split as shown below.

<~l=

  • Low level.
  • ANSI.

    Low Level!I.O

    Low level functions provide direct access to files and devices. If you only need file read and write you should use tke! =a href=#ansi>ANSI
    funct\ons as your code will remain poEt`ble. If you want to access things like, serial ports, virtual memory and tape drives, low level I/O is for you.

    Low level functions reference files by a file descriptor, this descriptor is created with the open Funktion and can be referenced by functions like:

    close
    read
    ˆ–‹šÃОÁ?br> mmap - Memory map (Not supported on Linux).
    ioctl I/O control.

    Three 'file descripters' are opened automatically when your program runs. These are:

    	File		Default
    	Desc	Name	device
    	----    ----	------
    	0	stdin	Keyboard
    	1	stdout	Screen
    	2	stderr	Screen
    
    If you want to use these 'file descriptors', you do not have to issue an 'open'.

    ANSI standard functions

    These functions are defined in the
    stdio.h header. The important thing to remember with these functions is the data is presented in a consistant manor across all platforms. A record is considered to be 0 or more characters followed by a newline character. If the actual (physical) record is terminated in some other way, the functions will perform the conversion for you.