view docs/ccguide/write.refentry @ 1717:023c3f57d08b

Fixed 8K memory leak when doing: iniz w1 w4;echo>/w1;echo>/w4;deiniz w4 w1
author boisy
date Tue, 17 Aug 2004 05:03:05 +0000
parents 5894df624e1a
children
line wrap: on
line source

<refentry id="write">
<refnamediv>
<refname>Write</refname>
<refname>Writeln</refname>
<refpurpose>write to a file or device</refpurpose>
</refnamediv>

<refsynopsisdiv>
<funcsynopsis>
<funcprototype>
  <funcdef><function>write</function></funcdef>
  <paramdef>int <parameter>pn</parameter></paramdef>
  <paramdef>char *<parameter>buffer</parameter></paramdef>
  <paramdef>int <parameter>count</parameter></paramdef>
</funcprototype>
<funcprototype>
  <funcdef><function>writeln</function></funcdef>
  <paramdef>int <parameter>pn</parameter></paramdef>
  <paramdef>char *<parameter>buffer</parameter></paramdef>
  <paramdef>int <parameter>count</parameter></paramdef>
</funcprototype>
</funcsynopsis>

</refsynopsisdiv>

<refsect1><title>Assembler Equivalent</title>
<para>
os9 I$WRITE
</para>
<para>
os9 I$WRITLN
</para>
</refsect1>

<refsect1><title>Description</title>
<para>
"Pn" must be a value returned by "open", "creat" or "dup" or
should be a 0(stdin), 1(stdout), or 2(stderr).
</para>
<para>
"Buffer should point to an area of memory from which "count"
bytes are to be written. Write returns the actual number of
bytes written, and if this is different from "count", an
error has occurred.
</para>
<para>
Writes in multiples of 256 bytes to file offset boundaries of
256 bytes are the most efficient.
</para>
<para>
Write causes no "line-editing" to occur on output. Writeln
causes line-editing and only writes up to the first "\n" in the
buffer if this is found before "count" is exhausted. For a
full description of the actions of these calls the reader is
referred to the OS-9 documentation.
</para>
</refsect1>

<refsect1><title>Diagnostics</title>
<para>
-1 is returned if "pn" is a bad path number, of "count" is
ridiculous or on physical i/o error.
</para>
</refsect1>

<refsect1><title>See Also</title>
<para>
<link linkend="creat">creat()</link>,
<link linkend="open">open()</link>
</para>
</refsect1>

</refentry>