diff options
author | Leo C | 2018-05-27 21:26:38 +0200 |
---|---|---|
committer | Leo C | 2018-05-27 21:26:38 +0200 |
commit | 289f6a146c0b2087607d8d8659531ea90142779a (patch) | |
tree | 37b0e9e341a4112582ccda4b8e22d4b2c4a6ee21 /fatfs/documents/doc/printf.html | |
parent | 70702af1370e44e32fb2c3c507e4759a187b4fe5 (diff) | |
download | z180-stamp-fatfs-0.13b.zip |
Import fatfs R0.13bfatfs-0.13b
Diffstat (limited to 'fatfs/documents/doc/printf.html')
-rw-r--r-- | fatfs/documents/doc/printf.html | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/fatfs/documents/doc/printf.html b/fatfs/documents/doc/printf.html new file mode 100644 index 0000000..82be70c --- /dev/null +++ b/fatfs/documents/doc/printf.html @@ -0,0 +1,98 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> +<html lang="en"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> +<meta http-equiv="Content-Style-Type" content="text/css"> +<link rel="up" title="FatFs" href="../00index_e.html"> +<link rel="alternate" hreflang="ja" title="Japanese" href="../ja/printf.html"> +<link rel="stylesheet" href="../css_e.css" type="text/css" media="screen" title="ELM Default"> +<title>FatFs - f_printf</title> +</head> + +<body> + +<div class="para func"> +<h2>f_printf</h2> +<p>The f_printf function writes formatted string to the file.</p> +<pre> +int f_printf ( + FIL* <span class="arg">fp</span>, <span class="c">/* [IN] File object */</span> + const TCHAR* <span class="arg">fmt</span>, <span class="c">/* [IN] Format stirng */</span> + ... +); +</pre> +</div> + +<div class="para arg"> +<h4>Parameters</h4> +<dl class="par"> +<dt>fp</dt> +<dd>Pointer to the open file object structure.</dd> +<dt>fmt</dt> +<dd>Pointer to the null <tt>'\0'</tt> terminated format string. The terminator character will not be output.</dd> +<dt>...</dt> +<dd>Optional arguments...</dd> + +</dl> +</div> + + +<div class="para ret"> +<h4>Return Values</h4> +<p>When the string was written successfuly, it returns number of character encoding units written to the file. When the function failed due to disk full or any error, an <tt>EOF (-1)</tt> will be returned.</p> +</div> + + +<div class="para desc"> +<h4>Description</h4> +<p>The format control directive is a sub-set of standard library shown as follows:</p> +<pre> + %[flag][width][type] +</pre> +<dl> +<dt>flag</dt><dd>Padding options. A <tt>-</tt> specifies left justified. A <tt>0</tt> specifies zero padded.</dd> +<dt>width</dt><dd>Minimum width of the field, <tt>1-99</tt> or <tt>*</tt>. If the width of generated string is less than the specified value, rest field is padded with white spaces or zeros. An <tt>*</tt> specifies the value comes from an argument in int type.</dd> +<dt>type</dt><dd><tt>c s d u o x b</tt> and prefix <tt>l</tt> specify type of the argument, character, string, signed integer in decimal, unsigned integer in decimal, unsigned integer in octal, unsigned integer in hexdecimal and unsigned integer in binary respectively. If <tt>sizeof (long)</tt> is greater than <tt>sizeof (int)</tt> (this is typical of 8/16-bit systems), a prefix <tt>l</tt> needs to be explicitly specified for long integer argument. These characters except for <tt>x</tt> are case insensitive.</dd> +</dl> +<p>When FatFs is configured for Unicode API (<tt><a href="config.html#lfn_unicode">FF_LFN_UNICODE</a> >= 1</tt>), character encoding on the string fuctions, <tt>f_putc</tt>, <tt>f_puts</tt>, <tt>f_printf</tt> and <tt>f_gets</tt> function, is also switched to Unicode. The Unicode characters in multiple encoding unit, such as surrogate pair and multi-byte sequence, should not be divided into two function calls, or the character will be lost. The character encoding <em>on the file</em> to be written via this function is selected by <tt><a href="config.html#strf_encode">FF_STRF_ENCODE</a></tt>. The characters with wrong encoding or invalid for the output encoding will be lost.</p> +</div> + + +<div class="para comp"> +<h4>QuickInfo</h4> +<p>This is a wrapper function of <a href="write.html"><tt>f_write</tt></a> function. Available when <tt><a href="config.html#fs_readonly">FF_FS_READONLY</a> == 0</tt> and <tt><a href="config.html#use_strfunc">FF_USE_STRFUNC</a> >= 1</tt>. When <tt>FF_USE_STRFUNC == 2</tt>, <tt>'\n'</tt>s in the generated string are written as <tt>'\r'+'\n'</tt> each.</p> +</div> + + +<div class="para use"> +<h4>Example</h4> +<pre> + <em>f_printf</em>(&fil, "%d", 1234); <span class="c">/* "1234" */</span> + <em>f_printf</em>(&fil, "%6d,%3d%%", -200, 5); <span class="c">/* " -200, 5%" */</span> + <em>f_printf</em>(&fil, "%ld", 12345L); <span class="c">/* "12345" */</span> + <em>f_printf</em>(&fil, "%06d", 25); <span class="c">/* "000025" */</span> + <em>f_printf</em>(&fil, "%06d", -25); <span class="c">/* "000-25" */</span> + <em>f_printf</em>(&fil, "%*d", 5, 100); <span class="c">/* " 100" */</span> + <em>f_printf</em>(&fil, "%-6d", 25); <span class="c">/* "25 " */</span> + <em>f_printf</em>(&fil, "%u", -1); <span class="c">/* "65535" or "4294967295" */</span> + <em>f_printf</em>(&fil, "%04x", 0xAB3); <span class="c">/* "0ab3" */</span> + <em>f_printf</em>(&fil, "%08lX", 0x123ABCL); <span class="c">/* "00123ABC" */</span> + <em>f_printf</em>(&fil, "%04o", 255); <span class="c">/* "0377" */</span> + <em>f_printf</em>(&fil, "%016b", 0x550F); <span class="c">/* "0101010100001111" */</span> + <em>f_printf</em>(&fil, "%s", "String"); <span class="c">/* "String" */</span> + <em>f_printf</em>(&fil, "%8s", "abc"); <span class="c">/* " abc" */</span> + <em>f_printf</em>(&fil, "%-8s", "abc"); <span class="c">/* "abc " */</span> + <em>f_printf</em>(&fil, "%c", 'a'); <span class="c">/* "a" */</span> + <em>f_printf</em>(&fil, "%f", 10.0); <span class="c">/* f_printf lacks floating point support */</span> +</pre> +</div> + + +<div class="para ref"> +<h4>See Also</h4> +<p><tt><a href="open.html">f_open</a>, <a href="putc.html">f_putc</a>, <a href="puts.html">f_puts</a>, <a href="gets.html">f_gets</a>, <a href="close.html">f_close</a>, <a href="sfile.html">FIL</a></tt></p> +</div> + +<p class="foot"><a href="../00index_e.html">Return</a></p> +</body> +</html> |