Annotation of researchv10dc/man/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 int 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 long 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: .I Frdline
        !           105: returns a pointer to the start of the line or
        !           106: .L (char *)0
        !           107: on end of file or read error.
        !           108: The macro
        !           109: .I FIOLINELEN
        !           110: returns the length (not including the 0
        !           111: byte) of the most recent line returned by
        !           112: .IR Frdline .
        !           113: The value is undefined after a call to any other
        !           114: .I fio
        !           115: routine.
        !           116: .PP
        !           117: .I Fgetc
        !           118: returns the next character from the file descriptor
        !           119: .IR fd ,
        !           120: or a negative value
        !           121: at end of file.
        !           122: .PP
        !           123: .I Fread
        !           124: reads
        !           125: .I nbytes
        !           126: of data from the file descriptor
        !           127: .I fd
        !           128: into memory starting at
        !           129: .IR addr .
        !           130: The number of bytes read is returned on success
        !           131: and a negative value is returned if a read error occurred.
        !           132: .PP
        !           133: .I Fseek
        !           134: applies
        !           135: .IR lseek (2)
        !           136: to
        !           137: .I fd
        !           138: taking buffering into account.
        !           139: It returns the new file offset.
        !           140: The macro
        !           141: .I FIOSEEK
        !           142: returns the file offset of the next character to be processed.
        !           143: .PP
        !           144: .I Fundo
        !           145: makes the characters returned by the last call to
        !           146: .I Frdline
        !           147: or
        !           148: .I Fgetc
        !           149: available for reading again.
        !           150: There is only one level of undo.
        !           151: .PP
        !           152: .I Fputc
        !           153: outputs the low order 8 bits of
        !           154: .I c
        !           155: on the file associated with file descriptor
        !           156: .IR fd .
        !           157: If this causes a
        !           158: .IR write
        !           159: (see
        !           160: .IR read (2))
        !           161: to occur and there is an error,
        !           162: a negative value is returned.
        !           163: Otherwise, zero is returned.
        !           164: .PP
        !           165: .I Fprint
        !           166: is a buffered interface to
        !           167: .IR print (3).
        !           168: If this causes a
        !           169: .IR write
        !           170: to occur and there is an error,
        !           171: a negative value is returned.
        !           172: Otherwise, the number of chars output is returned.
        !           173: .PP
        !           174: .I Fwrite
        !           175: outputs
        !           176: .I nbytes
        !           177: bytes of data starting at
        !           178: .I addr
        !           179: to the file associated with file descriptor
        !           180: .IR fd .
        !           181: If this causes a
        !           182: .IR write
        !           183: to occur and there is an error,
        !           184: a negative value is returned.
        !           185: Otherwise, the number of bytes written is returned.
        !           186: .PP
        !           187: .I Fflush
        !           188: causes any buffered output associated with
        !           189: .I fd
        !           190: to be written;
        !           191: it must precede a call of
        !           192: .I close
        !           193: on
        !           194: .IR fd.
        !           195: The return is as for
        !           196: .IR Fputc .
        !           197: .PP
        !           198: .I Ftie
        !           199: links together two file descriptors such that any
        !           200: .IR fio -initiated
        !           201: .IR read (2)
        !           202: on
        !           203: .I ifd
        !           204: causes a
        !           205: .I Fflush
        !           206: of
        !           207: .I ofd
        !           208: (if it has been initialized).
        !           209: It is appropriate for most programs used as filters to do
        !           210: .BR Ftie(0,1) .
        !           211: The tie may be broken by
        !           212: .BR "Ftie(ifd, -1)" .
        !           213: .PP
        !           214: .I Fexit
        !           215: is used to clean up all
        !           216: .I fio
        !           217: buffers.
        !           218: If
        !           219: .I type
        !           220: is zero, the buffers are
        !           221: .IR Fflush ed,
        !           222: otherwise they are
        !           223: .IR Fclose d.
        !           224: .B "Fexit(0)"
        !           225: is automatically called at
        !           226: .IR exit (3).
        !           227: .SH SEE ALSO
        !           228: .IR open (2),
        !           229: .IR print (3),
        !           230: .IR stdio (3)
        !           231: .SH DIAGNOSTICS
        !           232: .I Fio
        !           233: routines that return integers yield
        !           234: .B -1
        !           235: if 
        !           236: .I fd
        !           237: is not the descriptor of an open file or if the operation
        !           238: is inapplicable to
        !           239: .I fd.
        !           240: .SH BUGS
        !           241: .I Frdline
        !           242: deletes characters from lines longer than 4095 characters,
        !           243: ignores characters after the last newline in a file,
        !           244: and will read past and end-of-file indication on a stream.
        !           245: .br
        !           246: The data returned by
        !           247: .I Frdline
        !           248: may be overwritten by calls to any other
        !           249: .I fio
        !           250: routine.
        !           251: .br
        !           252: .I Fgetc
        !           253: is much slower than
        !           254: access through a pointer returned by
        !           255: .I Frdline.
        !           256: .br
        !           257: There is no 
        !           258: .IR scanf (3)
        !           259: analogue.

unix.superglobalmegacorp.com

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