<!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 Page</span></a></li> <li><a href="classes.html"><span>Data 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> <u>S</u>earch for </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 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> » <a class="el" href="dir_832905b1f7f5feaf61a306b40c0ac817.html">sys</a> » <a class="el" href="dir_d9dcf62a8e8b4cc91cbf2445d76a799b.html">lib</a></div> <h1>vsprintf.c File Reference</h1><code>#include <<a class="el" href="stdarg_8h-source.html">stdarg.h</a>></code><br> <code>#include <<a class="el" href="lib_2string_8h-source.html">lib/string.h</a>></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 </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 </td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#2eb96152a52d739e41d16c53a2e419f3">is_digit</a>(c) ((c) >= '0' && (c) <= '9')</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#437ef08681e7210d6678427030446a54">LEFT</a> 16</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#0ea7ff5947c5f5430a29fdd98391eb2a">PLUS</a> 4</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#9576d2d6eb782d532607bac077e87892">SIGN</a> 2</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#09c78d2f8feb311dd9fc969a0bf84979">SMALL</a> 64</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#5ff6e798033f03e74730e99f01936f84">SPACE</a> 8</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#84acb423f634978b61ac46856de40a70">SPECIAL</a> 32</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="vsprintf_8c.html#31373af6ef84e6fc25d9a9133522e4a6">ZEROPAD</a> 1</td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">static char * </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 </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 </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 </td> <td class="paramname"> </td> <td> ) </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 </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> ((c) >= '0' && (c) <= '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 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 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 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 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 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 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 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 * </td> <td class="paramname"> <em>str</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>num</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>base</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>size</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>precision</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>type</em></td><td> </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 ** </td> <td class="paramname"> <em>s</em> </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#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 * </td> <td class="paramname"> <em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </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> </td> <td class="paramname"> <em>args</em></td><td> </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 <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>