Annotation of researchv10dc/man/adm/man3/fio.3, revision 1.1

1.1     ! root        1: .TH FIO 3
        !             2: .CT 2 file_io
        !             3: .SH NAME
        !             4: Finit, Frdline, Fgetc, Fread, Fseek, Fundo,
        !             5: Fputc, Fprint, Fwrite, Fflush, Ftie, Fclose, Fexit \(mi fast buffered input/output
        !             6: .SH SYNOPSIS
        !             7: .nf
        !             8: .2C
        !             9: .B #include <fio.h>
        !            10: .PP
        !            11: .B void Finit(fd, buf)
        !            12: .B char *buf;
        !            13: .PP
        !            14: .B void Fclose(fd);
        !            15: .PP
        !            16: .B int Fprint(fildes, format [, arg ...])
        !            17: .B int fildes;
        !            18: .B char \(**format;
        !            19: .PP
        !            20: .B char *Frdline(fd)
        !            21: .PP
        !            22: .B int FIOLINELEN(fd)
        !            23: .PP
        !            24: .B long FIOSEEK(fd)
        !            25: .PP
        !            26: .B int Fgetc(fd)
        !            27: .PP
        !            28: .B void Fundo(fd)
        !            29: .PP
        !            30: .B long Fseek(fd, offset, ptr)
        !            31: .B long offset;
        !            32: .PP
        !            33: .B int Fputc(fd, c)
        !            34: .PP
        !            35: .B long Fread(fd, addr, nbytes)
        !            36: .B char *addr;
        !            37: .B long nbytes;
        !            38: .PP
        !            39: .B int Fwrite(fd, addr, nbytes)
        !            40: .B char *addr;
        !            41: .B long nbytes;
        !            42: .PP
        !            43: .B int Fflush(fd)
        !            44: .PP
        !            45: .B void Ftie(ifd, ofd)
        !            46: .PP
        !            47: .B Fexit(type)
        !            48: .1C
        !            49: .fi
        !            50: .SH DESCRIPTION
        !            51: These routines provide buffered I/O, faster than, and incompatible
        !            52: with
        !            53: .IR stdio (3).
        !            54: The routines can be called in any order.
        !            55: I/O on different file descriptors is independent.
        !            56: .PP
        !            57: .I Finit
        !            58: initializes a buffer (whose type is
        !            59: .IR Fbuffer )
        !            60: associated with the file descriptor
        !            61: .IR fd .
        !            62: Any buffered input associated with
        !            63: .I fd
        !            64: will be lost.
        !            65: The buffer can be supplied by the user
        !            66: (it should be at least
        !            67: .B sizeof(Fbuffer)
        !            68: bytes)
        !            69: or if
        !            70: .I buf
        !            71: is
        !            72: .BR "(char *)0" ,
        !            73: .I Finit
        !            74: will use
        !            75: .IR malloc (3).
        !            76: .IR Finit
        !            77: must be called after a stretch of
        !            78: .IR non- fio
        !            79: activity, such as
        !            80: .IR close
        !            81: or
        !            82: .IR lseek (2),
        !            83: between
        !            84: .I fio
        !            85: calls on the same file descriptor number;
        !            86: it is unnecessary, but harmless, before the first
        !            87: .I fio
        !            88: activity on a given file descriptor number.
        !            89: .PP
        !            90: .I Fclose
        !            91: flushes the buffer for
        !            92: .IR fd ,
        !            93: .IR free s
        !            94: the buffer if it was allocated by
        !            95: .IR Finit ,
        !            96: and then closes
        !            97: .IR fd .
        !            98: .PP
        !            99: .I Frdline
        !           100: reads a line from the file associated with the file descriptor
        !           101: .IR fd .
        !           102: The newline at the end of the line is replaced by a 0
        !           103: byte.
        !           104: Lines longer than 4096 characters will have characters deleted.
        !           105: .I Frdline
        !           106: returns a pointer to the start of the line or
        !           107: .L (char *)0
        !           108: on end of file or read error.
        !           109: The macro
        !           110: .I FIOLINELEN
        !           111: returns the length (not including the 0
        !           112: byte) of the most recent line returned by
        !           113: .IR Frdline .
        !           114: The value is undefined after a call to any other
        !           115: .I fio
        !           116: routine.
        !           117: .PP
        !           118: .I Fgetc
        !           119: returns the next character from the file descriptor
        !           120: .IR fd ,
        !           121: or a negative value
        !           122: at end of file.
        !           123: .PP
        !           124: .I Fread
        !           125: reads
        !           126: .I nbytes
        !           127: of data from the file descriptor
        !           128: .I fd
        !           129: into memory starting at
        !           130: .IR addr .
        !           131: The number of bytes read is returned on success
        !           132: and a negative value is returned if a read error occurred.
        !           133: .PP
        !           134: .I Fseek
        !           135: applies
        !           136: .IR lseek (2)
        !           137: to
        !           138: .I fd
        !           139: taking buffering into account.
        !           140: It returns the new file offset.
        !           141: The macro
        !           142: .I FIOSEEK
        !           143: returns the file offset of the next character to be processed.
        !           144: .PP
        !           145: .I Fundo
        !           146: makes the characters returned by the last call to
        !           147: .I Frdline
        !           148: or
        !           149: .I Fgetc
        !           150: available for reading again.
        !           151: There is only one level of undo.
        !           152: .PP
        !           153: .I Fputc
        !           154: outputs the low order 8 bits of
        !           155: .I c
        !           156: on the file associated with file descriptor
        !           157: .IR fd .
        !           158: If this causes a
        !           159: .IR write
        !           160: (see
        !           161: .IR read (2))
        !           162: to occur and there is an error,
        !           163: a negative value is returned.
        !           164: Otherwise, zero is returned.
        !           165: .PP
        !           166: .I Fprint
        !           167: is a buffered interface to
        !           168: .IR print (3).
        !           169: If this causes a
        !           170: .IR write
        !           171: to occur and there is an error,
        !           172: a negative value is returned.
        !           173: Otherwise, the number of chars output is returned.
        !           174: .PP
        !           175: .I Fwrite
        !           176: outputs
        !           177: .I nbytes
        !           178: bytes of data starting at
        !           179: .I addr
        !           180: to the file associated with file descriptor
        !           181: .IR fd .
        !           182: If this causes a
        !           183: .IR write
        !           184: to occur and there is an error,
        !           185: a negative value is returned.
        !           186: Otherwise, the number of bytes written is returned.
        !           187: .PP
        !           188: .I Fflush
        !           189: causes any buffered output associated with
        !           190: .I fd
        !           191: to be written;
        !           192: it must precede a call of
        !           193: .I close
        !           194: on
        !           195: .IR fd.
        !           196: The return is as for
        !           197: .IR Fputc .
        !           198: .PP
        !           199: .I Ftie
        !           200: links together two file descriptors such that any
        !           201: .IR fio -initiated
        !           202: .IR read (2)
        !           203: on
        !           204: .I ifd
        !           205: causes a
        !           206: .I Fflush
        !           207: of
        !           208: .I ofd
        !           209: (if it has been initialized).
        !           210: It is appropriate for most programs used as filters to do
        !           211: .BR Ftie(0,1) .
        !           212: The tie may be broken by
        !           213: .BR "Ftie(ifd, -1)" .
        !           214: .PP
        !           215: .I Fexit
        !           216: is used to clean up all
        !           217: .I fio
        !           218: buffers.
        !           219: If
        !           220: .I type
        !           221: is zero, the buffers are
        !           222: .IR Fflush ed,
        !           223: otherwise they are
        !           224: .IR Fclose d.
        !           225: .B "Fexit(0)"
        !           226: is automatically called at
        !           227: .IR exit (3).
        !           228: .SH SEE ALSO
        !           229: .IR open (2),
        !           230: .IR print (3),
        !           231: .IR stdio (3)
        !           232: .SH DIAGNOSTICS
        !           233: .I Fio
        !           234: routines that return integers yield
        !           235: .B -1
        !           236: if 
        !           237: .I fd
        !           238: is not the descriptor of an open file or if the operation
        !           239: is inapplicable to
        !           240: .I fd.
        !           241: .SH BUGS
        !           242: The data returned by
        !           243: .I Frdline
        !           244: may be overwritten by calls to any other
        !           245: .I fio
        !           246: routine.
        !           247: .br
        !           248: .I Fgetc
        !           249: is much slower than
        !           250: access through a pointer returned by
        !           251: .I Frdline.
        !           252: .br
        !           253: There is no 
        !           254: .IR scanf (3)
        !           255: analogue.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.