🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

1 total messages Started by Orlando Sotomayor-Diaz Thu, 15 May 1986 17:29
mod.std.c Digest V16#13
#133
Author: Orlando Sotomayor-Diaz
Date: Thu, 15 May 1986 17:29
255 lines
9195 bytes
From: Orlando Sotomayor-Diaz (The Moderator) <cbosgd!std-c>


mod.std.c Digest            Thu, 15 May 86       Volume 16 : Issue  13

Today's Topics:
         MORE C standard differences Apr85-Feb86, part 3 of 9
----------------------------------------------------------------------

Date: 
From: ihnp4!utzoo!lsuc!msb
Subject: MORE C standard differences Apr85-Feb86, part 3 of 9
To: utzoo!ihnp4!hou2d!osd

# D.9.4.4 The tmpnam function

  *    If the argument is not {null --> a null pointer}, it  is  assumed
  *    to  point to an array of at least L_tmpnam {bytes --> characters}
       ...



# D.9.5.2 The fflush function

       The fflush function causes any  unwritten  data  for  the  output
  *    stream  pointed to by stream to be {--> delivered to the host en-
       vironment to be} written to the file.



# D.9.5.3 The fopen function

  *    "w": create text file for  writing,  or  truncate  {-->  to  zero
       length}.

Remark: The same change for "wb", "w+", and "w+b".



# D.9.5.3 The fopen function

       However, output may not be directly followed by input without  an
  *    intervening  {--> fflush,} fseek, or rewind, and input may not be
  *    directly followed by output without an intervening {-->  fflush,}
       fseek,  or  rewind, unless the input operation encounters end-of-
       file.



# D.9.5.3 The fopen function

<--O   After the write operation, the file pointer  is  repositioned  at
<--O   the end of the output file and the buffer is flushed.



# D.9.5.3 The fopen function

N-->   When opened, a stream is fully buffered if and only  if  it  does
N-->   not refer to an interactive device.



# D.9.5.4 The freopen function

       The primary use of freopen is ...  with ...   stderr,  stdin,  or
  *    stdout  ..., as those identifiers need not be {lvalue expressions
       --> modifiable lvalues} (that may be assigned  to  by  the  fopen
       function).



# D.9.5.5 The setbuf function

<--O   The setbuf function is used after the stream pointed to be stream
<--O   has  been  associated  with an open file but before it is read or
<--O   written.  It causes the array pointed to by buf to  be  used  in-
<--O   stead  of  an  automatically  allocated buffer.  If buf is a null
<--O   pointer, input/output on that stream will  be  completely  unbuf-
<--O   fered.  The macro BUFSIZ specifies the size in bytes of the array
<--O   that is needed.

<--O   The standard stream stdout is normally buffered if  and  only  if
<--O   the  output  does  not  refer  to a terminal; this default may be
<--O   changed by setbuf.  The standard stream stderr is by default  un-
<--O   buffered  unconditionally;  setbuf will set the state to whatever
<--O   is desired.  When an output stream is unbuffered, information ap-
<--O   pears  on  the  destination  file or terminal as soon as written;
<--O   when it is buffered, characters are saved up  and  written  as  a
<--O   block.

<--O   ...  The buffer must have a lifetime at least  as  great  as  the
<--O   open  stream, so a stream must be closed before a buffer that has
<--O   automatic storage duration is deallocated upon block exit.

N-->   Except  that  it  returns  no  value,  the  setbuf  function   is
N-->   equivalent to the setvbuf function invoked with the values _IOFBF
N-->   for type and BUFSIZ for size, or (if buf is a null pointer), with
N-->   the value _IONBF for type.



# D.9.5.6 The setvbuf function

                   int setvbuf(FILE *stream, char *buf, int type,
  *                        {int --> size_t} size);



# D.9.5.6 The setvbuf function

  *    The setvbuf function {is --> may be} used after the stream point-
       ed  to by stream has been associated with an open file but before
       it is read or written.



# D.9.5.6 The setvbuf function

  *    ...  _IOFBF causes input/output to be fully buffered {, if possi-
  *    ble  -->};  _IOLBF  causes input/output to be line buffered {, if
       possible -->} ...; _IONBF causes input/output  to  be  completely
  *    unbuffered {, if possible -->}.



# D.9.5.6 The setvbuf function

  *    If buf is not a null pointer, the array it points  to  {will  -->
       may}  be  used instead of an automatically allocated buffer.  ...
  *    {--> The contents of the array at any time are indeterminate.}

       ...  The buffer must have a lifetime at least  as  great  as  the
  *    open  stream,  so the stream {must --> should} be closed before a
       buffer that has automatic storage duration  is  deallocated  upon
       block exit.



# D.9.5.6 The setvbuf function

       The setvbuf function returns non-zero  if  an  invalid  value  is
  *    given  for  type  or  size  {-->,  or  if  the  request cannot be
       honored}.



# D.9.6.1 The fprintf function

  *    An optional decimal  {digit  string  -->  integer}  specifying  a
       minimum  "field  width".   ...  The padding is with spaces unless
  *    the field width {digit string --> integer} starts with a zero, in
       which case the padding is with zeros.

  *    An {--> optional} "precision" ...  The precision takes  the  form
  *    of  a  period  (.)  followed  by an {--> optional} decimal {digit
  *    string  --> integer}; {a null digit string --> if the integer  is
       omitted, it} is treated as zero.



# D.9.6.1 The fprintf function

       An optional h specifying that a following ...  conversion specif-
       ier  applies  to  a short int or unsigned short int argument (the
       argument will have been promoted ...   and  its  value  shall  be
  *    {cast  --> converted} to a short int or unsigned short int before
       printing) ...



# D.9.6.1 The fprintf function

  *    c       The {least significant byte of the -->} int  argument  is
  *            converted to a {character --> char}, and {--> the result-
               ing character is} printed.



# D.9.6.1 The fprintf function

<--O   If the character after the % is not a valid conversion specifier,
<--O   the behavior is undefined.

N-->   If the conversion specifier is a lower-case letter  that  is  not
N-->   described  above,  the  behavior is undefined.  If the conversion
N-->   specifier is any other character that is not described above, the
N-->   behavior is implementation-defined.



# D.9.6.1 The fprintf function

  *           {--> #include <stdio.h>}
                   fprintf(stdout, "%s, %s %d, %.2d:%.2d\n",
                         weekday, month, day, hour, min);

       ...

                   #include <math.h>
  *           {--> #include <stdio.h>}
                   fprintf(stdout, "pi = %.5f\n", 4 * atan(1.0));



# D.9.6.2 The fscanf function

  *    Conversion specifications, consisting {--> in  sequence}  of  the
       character  %,  an optional assignment-suppressing character *, an
  *    optional {numerical --> decimal integer that specifies the}  max-
       imum field width, ...



# D.9.6.2 The fscanf function

       ...  The following conversion specifiers are valid:

  *    d       An {--> optionally signed} decimal integer  is  expected;
               ...



# D.9.6.2 The fscanf function

  *            ...  the {subsequent --> corresponding} argument shall be
               a pointer to integer.

Remark: This change is made throughout the section.



# D.9.6.2 The fscanf function

<--O   i       An integer is expected; the subsequent argument must be a
<--O           pointer  to  integer.  The input is interpreted as an in-
<--O           teger constant, with an optional sign prefix and  an  op-
<--O           tional  integer  suffix.   If the input field begins with
<--O           the characters 0x or 0X, the field is taken as a  hexade-
<--O           cimal integer.  Otherwise, if the input field begins with
<--O           the character 0, the field is taken as an octal  integer.
<--O           Otherwise, the input field is taken as a decimal integer.

N-->   i       An integer is expected; the corresponding argument  shall
N-->           be  a  pointer  to  integer.   The  input  format  is  as
N-->           described for the strtol function, with the value  0  for
N-->           the base argument.

------------------------------

End of mod.std.c Digest - Thu, 15 May 86 13:29:24 EDT
******************************
USENET -> posting only through cbosgd!std-c.
ARPA -> ... through cbosgd!std-c@BERKELEY.ARPA (NOT to INFO-C)
In all cases, you may also reply to the author(s) above.
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads