Newer
Older
UbixOS / doc / html / vsprintf_8c.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>UbixOS V2: src/sys/lib/vsprintf.c File Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.4.7 -->
<div class="tabs">
  <ul>
    <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="classes.html"><span>Data&nbsp;Structures</span></a></li>
    <li id="current"><a href="files.html"><span>Files</span></a></li>
    <li><a href="dirs.html"><span>Directories</span></a></li>
    <li>
      <form action="search.php" method="get">
        <table cellspacing="0" cellpadding="0" border="0">
          <tr>
            <td><label>&nbsp;<u>S</u>earch&nbsp;for&nbsp;</label></td>
            <td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
          </tr>
        </table>
      </form>
    </li>
  </ul></div>
<div class="tabs">
  <ul>
    <li><a href="files.html"><span>File&nbsp;List</span></a></li>
    <li><a href="globals.html"><span>Globals</span></a></li>
  </ul></div>
<div class="nav">
<a class="el" href="dir_897b6a2d7bab147dd1db58381aad3984.html">src</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_832905b1f7f5feaf61a306b40c0ac817.html">sys</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_d9dcf62a8e8b4cc91cbf2445d76a799b.html">lib</a></div>
<h1>vsprintf.c File Reference</h1><code>#include &lt;<a class="el" href="stdarg_8h-source.html">stdarg.h</a>&gt;</code><br>
<code>#include &lt;<a class="el" href="lib_2string_8h-source.html">lib/string.h</a>&gt;</code><br>

<p>
Include dependency graph for vsprintf.c:<p><center><img src="vsprintf_8c__incl.png" border="0" usemap="#src/sys/lib/vsprintf.c_map" alt=""></center>
<map name="src/sys/lib/vsprintf.c_map">
<area href="stdarg_8h.html" shape="rect" coords="220,5,297,32" alt="">
<area href="lib_2string_8h.html" shape="rect" coords="212,56,305,83" alt="">
<area href="types_8h.html" shape="rect" coords="356,56,476,83" alt="">
<area href="__types_8h.html" shape="rect" coords="527,56,631,83" alt="">
</map>

<p>
<a href="vsprintf_8c-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#71a962bd85fdfc754c583d48d47e2040">do_div</a>(n, base)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#2eb96152a52d739e41d16c53a2e419f3">is_digit</a>(c)&nbsp;&nbsp;&nbsp;((c) &gt;= '0' &amp;&amp; (c) &lt;= '9')</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#437ef08681e7210d6678427030446a54">LEFT</a>&nbsp;&nbsp;&nbsp;16</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#0ea7ff5947c5f5430a29fdd98391eb2a">PLUS</a>&nbsp;&nbsp;&nbsp;4</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#9576d2d6eb782d532607bac077e87892">SIGN</a>&nbsp;&nbsp;&nbsp;2</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#09c78d2f8feb311dd9fc969a0bf84979">SMALL</a>&nbsp;&nbsp;&nbsp;64</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#5ff6e798033f03e74730e99f01936f84">SPACE</a>&nbsp;&nbsp;&nbsp;8</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#84acb423f634978b61ac46856de40a70">SPECIAL</a>&nbsp;&nbsp;&nbsp;32</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#31373af6ef84e6fc25d9a9133522e4a6">ZEROPAD</a>&nbsp;&nbsp;&nbsp;1</td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#c2f4c669c6f6aa6caa5ab8adb1b07dd0">number</a> (char *str, int num, int base, int size, int precision, int type)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#3fa7c8ef8597579301cb4b5c59bc6d9a">skip_atoi</a> (const char **s)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#621577c2df0ad5faa281223c56eeb7a5">vsprintf</a> (char *<a class="el" href="structbuf.html">buf</a>, const char *fmt, <a class="el" href="stdarg_8h.html#661698386a304e27be00e5e9125a6ec5">vaList</a> args)</td></tr>

</table>
<hr><h2>Define Documentation</h2>
<a class="anchor" name="71a962bd85fdfc754c583d48d47e2040"></a><!-- doxytag: member="vsprintf.c::do_div" ref="71a962bd85fdfc754c583d48d47e2040" args="(n, base)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define do_div          </td>
          <td>(</td>
          <td class="paramtype">n,         <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">base&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Value:</b><div class="fragment"><pre class="fragment">({ \
<span class="keywordtype">int</span> __res; \
__asm__(<span class="stringliteral">"divl %4"</span>:<span class="stringliteral">"=a"</span> (n),<span class="stringliteral">"=d"</span> (__res):<span class="stringliteral">"0"</span> (n),<span class="stringliteral">"1"</span> (0),<span class="stringliteral">"r"</span> (base)); \
__res; })
</pre></div>
<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00079">79</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
Referenced by <a class="el" href="vsprintf_8c-source.html#l00084">number()</a>.
</div>
</div><p>
<a class="anchor" name="2eb96152a52d739e41d16c53a2e419f3"></a><!-- doxytag: member="vsprintf.c::is_digit" ref="2eb96152a52d739e41d16c53a2e419f3" args="(c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define is_digit          </td>
          <td>(</td>
          <td class="paramtype">c&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;((c) &gt;= '0' &amp;&amp; (c) &lt;= '9')</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00060">60</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
Referenced by <a class="el" href="vsprintf_8c-source.html#l00062">skip_atoi()</a>, and <a class="el" href="vsprintf_8c-source.html#l00139">vsprintf()</a>.
</div>
</div><p>
<a class="anchor" name="437ef08681e7210d6678427030446a54"></a><!-- doxytag: member="vsprintf.c::LEFT" ref="437ef08681e7210d6678427030446a54" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define LEFT&nbsp;&nbsp;&nbsp;16          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00075">75</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
Referenced by <a class="el" href="vsprintf_8c-source.html#l00084">number()</a>, and <a class="el" href="vsprintf_8c-source.html#l00139">vsprintf()</a>.
</div>
</div><p>
<a class="anchor" name="0ea7ff5947c5f5430a29fdd98391eb2a"></a><!-- doxytag: member="vsprintf.c::PLUS" ref="0ea7ff5947c5f5430a29fdd98391eb2a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define PLUS&nbsp;&nbsp;&nbsp;4          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00073">73</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
Referenced by <a class="el" href="vsprintf_8c-source.html#l00084">number()</a>, and <a class="el" href="vsprintf_8c-source.html#l00139">vsprintf()</a>.
</div>
</div><p>
<a class="anchor" name="9576d2d6eb782d532607bac077e87892"></a><!-- doxytag: member="vsprintf.c::SIGN" ref="9576d2d6eb782d532607bac077e87892" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SIGN&nbsp;&nbsp;&nbsp;2          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00072">72</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
Referenced by <a class="el" href="vsprintf_8c-source.html#l00084">number()</a>, and <a class="el" href="vsprintf_8c-source.html#l00139">vsprintf()</a>.
</div>
</div><p>
<a class="anchor" name="09c78d2f8feb311dd9fc969a0bf84979"></a><!-- doxytag: member="vsprintf.c::SMALL" ref="09c78d2f8feb311dd9fc969a0bf84979" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SMALL&nbsp;&nbsp;&nbsp;64          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00077">77</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
Referenced by <a class="el" href="vsprintf_8c-source.html#l00084">number()</a>, and <a class="el" href="vsprintf_8c-source.html#l00139">vsprintf()</a>.
</div>
</div><p>
<a class="anchor" name="5ff6e798033f03e74730e99f01936f84"></a><!-- doxytag: member="vsprintf.c::SPACE" ref="5ff6e798033f03e74730e99f01936f84" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SPACE&nbsp;&nbsp;&nbsp;8          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00074">74</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
Referenced by <a class="el" href="vsprintf_8c-source.html#l00084">number()</a>, and <a class="el" href="vsprintf_8c-source.html#l00139">vsprintf()</a>.
</div>
</div><p>
<a class="anchor" name="84acb423f634978b61ac46856de40a70"></a><!-- doxytag: member="vsprintf.c::SPECIAL" ref="84acb423f634978b61ac46856de40a70" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SPECIAL&nbsp;&nbsp;&nbsp;32          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00076">76</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
Referenced by <a class="el" href="vsprintf_8c-source.html#l00084">number()</a>, and <a class="el" href="vsprintf_8c-source.html#l00139">vsprintf()</a>.
</div>
</div><p>
<a class="anchor" name="31373af6ef84e6fc25d9a9133522e4a6"></a><!-- doxytag: member="vsprintf.c::ZEROPAD" ref="31373af6ef84e6fc25d9a9133522e4a6" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ZEROPAD&nbsp;&nbsp;&nbsp;1          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00071">71</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
Referenced by <a class="el" href="vsprintf_8c-source.html#l00084">number()</a>, and <a class="el" href="vsprintf_8c-source.html#l00139">vsprintf()</a>.
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="c2f4c669c6f6aa6caa5ab8adb1b07dd0"></a><!-- doxytag: member="vsprintf.c::number" ref="c2f4c669c6f6aa6caa5ab8adb1b07dd0" args="(char *str, int num, int base, int size, int precision, int type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static char* number           </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>str</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>num</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>base</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>precision</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00084">84</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
References <a class="el" href="vsprintf_8c-source.html#l00079">do_div</a>, <a class="el" href="vsprintf_8c-source.html#l00075">LEFT</a>, <a class="el" href="vsprintf_8c-source.html#l00073">PLUS</a>, <a class="el" href="vsprintf_8c-source.html#l00072">SIGN</a>, <a class="el" href="vsprintf_8c-source.html#l00077">SMALL</a>, <a class="el" href="vsprintf_8c-source.html#l00074">SPACE</a>, <a class="el" href="vsprintf_8c-source.html#l00076">SPECIAL</a>, and <a class="el" href="vsprintf_8c-source.html#l00071">ZEROPAD</a>.
<p>
Referenced by <a class="el" href="vsprintf_8c-source.html#l00139">vsprintf()</a>.
</div>
</div><p>
<a class="anchor" name="3fa7c8ef8597579301cb4b5c59bc6d9a"></a><!-- doxytag: member="vsprintf.c::skip_atoi" ref="3fa7c8ef8597579301cb4b5c59bc6d9a" args="(const char **s)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int skip_atoi           </td>
          <td>(</td>
          <td class="paramtype">const char **&nbsp;</td>
          <td class="paramname"> <em>s</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00062">62</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
References <a class="el" href="vsprintf_8c-source.html#l00060">is_digit</a>.
<p>
Referenced by <a class="el" href="vsprintf_8c-source.html#l00139">vsprintf()</a>.
</div>
</div><p>
<a class="anchor" name="621577c2df0ad5faa281223c56eeb7a5"></a><!-- doxytag: member="vsprintf.c::vsprintf" ref="621577c2df0ad5faa281223c56eeb7a5" args="(char *buf, const char *fmt, vaList args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int vsprintf           </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>buf</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="stdarg_8h.html#661698386a304e27be00e5e9125a6ec5">vaList</a>&nbsp;</td>
          <td class="paramname"> <em>args</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="vsprintf_8c-source.html#l00139">139</a> of file <a class="el" href="vsprintf_8c-source.html">vsprintf.c</a>.
<p>
References <a class="el" href="vsprintf_8c-source.html#l00060">is_digit</a>, <a class="el" href="vsprintf_8c-source.html#l00075">LEFT</a>, <a class="el" href="vsprintf_8c-source.html#l00084">number()</a>, <a class="el" href="vsprintf_8c-source.html#l00073">PLUS</a>, <a class="el" href="vsprintf_8c-source.html#l00072">SIGN</a>, <a class="el" href="vsprintf_8c-source.html#l00062">skip_atoi()</a>, <a class="el" href="vsprintf_8c-source.html#l00077">SMALL</a>, <a class="el" href="vsprintf_8c-source.html#l00074">SPACE</a>, <a class="el" href="vsprintf_8c-source.html#l00076">SPECIAL</a>, <a class="el" href="strlen_8S-source.html#l00004">strlen</a>, <a class="el" href="stdarg_8h-source.html#l00038">vaArg</a>, and <a class="el" href="vsprintf_8c-source.html#l00071">ZEROPAD</a>.
<p>
Referenced by <a class="el" href="kpanic_8c-source.html#l00042">kpanic()</a>, <a class="el" href="kprintf_8c-source.html#l00038">kprintf()</a>, and <a class="el" href="kprintf_8c-source.html#l00051">sprintf()</a>.
<p>
Here is the call graph for this function:<p><center><img src="vsprintf_8c_621577c2df0ad5faa281223c56eeb7a5_cgraph.png" border="0" usemap="#vsprintf_8c_621577c2df0ad5faa281223c56eeb7a5_cgraph_map" alt=""></center>
<map name="vsprintf_8c_621577c2df0ad5faa281223c56eeb7a5_cgraph_map">
<area href="vsprintf_8c.html#c2f4c669c6f6aa6caa5ab8adb1b07dd0" shape="rect" coords="132,5,207,32" alt="">
<area href="vsprintf_8c.html#3fa7c8ef8597579301cb4b5c59bc6d9a" shape="rect" coords="129,56,209,83" alt="">
</map>

</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Fri Dec 15 11:24:55 2006 for UbixOS V2 by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
</body>
</html>