<html lang="en">
<head>
<title>Table of Output Conversions - The GNU C Library</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="The GNU C Library">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Formatted-Output.html#Formatted-Output" title="Formatted Output">
<link rel="prev" href="Output-Conversion-Syntax.html#Output-Conversion-Syntax" title="Output Conversion Syntax">
<link rel="next" href="Integer-Conversions.html#Integer-Conversions" title="Integer Conversions">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU C library.

This is Edition 0.12, last updated 2007-10-27,
of `The GNU C Library Reference Manual', for version
2.8 (Sourcery G++ Lite 2011.03-41).

Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2001, 2002,
2003, 2007, 2008, 2010 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``Free Software Needs Free Documentation''
and ``GNU Lesser General Public License'', the Front-Cover texts being
``A GNU Manual'', and with the Back-Cover Texts as in (a) below.  A
copy of the license is included in the section entitled "GNU Free
Documentation License".

(a) The FSF's Back-Cover Text is: ``You have the freedom to
copy and modify this GNU manual.  Buying copies from the FSF
supports it in developing GNU and promoting software freedom.''-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="Table-of-Output-Conversions"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Integer-Conversions.html#Integer-Conversions">Integer Conversions</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Output-Conversion-Syntax.html#Output-Conversion-Syntax">Output Conversion Syntax</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Formatted-Output.html#Formatted-Output">Formatted Output</a>
<hr>
</div>

<h4 class="subsection">12.12.3 Table of Output Conversions</h4>

<p><a name="index-output-conversions_002c-for-_0040code_007bprintf_007d-1025"></a>
Here is a table summarizing what all the different conversions do:

     <dl>
<dt>&lsquo;<samp><span class="samp">%d</span></samp>&rsquo;, &lsquo;<samp><span class="samp">%i</span></samp>&rsquo;<dd>Print an integer as a signed decimal number.  See <a href="Integer-Conversions.html#Integer-Conversions">Integer Conversions</a>, for details.  &lsquo;<samp><span class="samp">%d</span></samp>&rsquo; and &lsquo;<samp><span class="samp">%i</span></samp>&rsquo; are synonymous for
output, but are different when used with <code>scanf</code> for input
(see <a href="Table-of-Input-Conversions.html#Table-of-Input-Conversions">Table of Input Conversions</a>).

     <br><dt>&lsquo;<samp><span class="samp">%o</span></samp>&rsquo;<dd>Print an integer as an unsigned octal number.  See <a href="Integer-Conversions.html#Integer-Conversions">Integer Conversions</a>, for details.

     <br><dt>&lsquo;<samp><span class="samp">%u</span></samp>&rsquo;<dd>Print an integer as an unsigned decimal number.  See <a href="Integer-Conversions.html#Integer-Conversions">Integer Conversions</a>, for details.

     <br><dt>&lsquo;<samp><span class="samp">%x</span></samp>&rsquo;, &lsquo;<samp><span class="samp">%X</span></samp>&rsquo;<dd>Print an integer as an unsigned hexadecimal number.  &lsquo;<samp><span class="samp">%x</span></samp>&rsquo; uses
lower-case letters and &lsquo;<samp><span class="samp">%X</span></samp>&rsquo; uses upper-case.  See <a href="Integer-Conversions.html#Integer-Conversions">Integer Conversions</a>, for details.

     <br><dt>&lsquo;<samp><span class="samp">%f</span></samp>&rsquo;<dd>Print a floating-point number in normal (fixed-point) notation. 
See <a href="Floating_002dPoint-Conversions.html#Floating_002dPoint-Conversions">Floating-Point Conversions</a>, for details.

     <br><dt>&lsquo;<samp><span class="samp">%e</span></samp>&rsquo;, &lsquo;<samp><span class="samp">%E</span></samp>&rsquo;<dd>Print a floating-point number in exponential notation.  &lsquo;<samp><span class="samp">%e</span></samp>&rsquo; uses
lower-case letters and &lsquo;<samp><span class="samp">%E</span></samp>&rsquo; uses upper-case.  See <a href="Floating_002dPoint-Conversions.html#Floating_002dPoint-Conversions">Floating-Point Conversions</a>, for details.

     <br><dt>&lsquo;<samp><span class="samp">%g</span></samp>&rsquo;, &lsquo;<samp><span class="samp">%G</span></samp>&rsquo;<dd>Print a floating-point number in either normal or exponential notation,
whichever is more appropriate for its magnitude.  &lsquo;<samp><span class="samp">%g</span></samp>&rsquo; uses
lower-case letters and &lsquo;<samp><span class="samp">%G</span></samp>&rsquo; uses upper-case.  See <a href="Floating_002dPoint-Conversions.html#Floating_002dPoint-Conversions">Floating-Point Conversions</a>, for details.

     <br><dt>&lsquo;<samp><span class="samp">%a</span></samp>&rsquo;, &lsquo;<samp><span class="samp">%A</span></samp>&rsquo;<dd>Print a floating-point number in a hexadecimal fractional notation which
the exponent to base 2 represented in decimal digits.  &lsquo;<samp><span class="samp">%a</span></samp>&rsquo; uses
lower-case letters and &lsquo;<samp><span class="samp">%A</span></samp>&rsquo; uses upper-case.  See <a href="Floating_002dPoint-Conversions.html#Floating_002dPoint-Conversions">Floating-Point Conversions</a>, for details.

     <br><dt>&lsquo;<samp><span class="samp">%c</span></samp>&rsquo;<dd>Print a single character.  See <a href="Other-Output-Conversions.html#Other-Output-Conversions">Other Output Conversions</a>.

     <br><dt>&lsquo;<samp><span class="samp">%C</span></samp>&rsquo;<dd>This is an alias for &lsquo;<samp><span class="samp">%lc</span></samp>&rsquo; which is supported for compatibility
with the Unix standard.

     <br><dt>&lsquo;<samp><span class="samp">%s</span></samp>&rsquo;<dd>Print a string.  See <a href="Other-Output-Conversions.html#Other-Output-Conversions">Other Output Conversions</a>.

     <br><dt>&lsquo;<samp><span class="samp">%S</span></samp>&rsquo;<dd>This is an alias for &lsquo;<samp><span class="samp">%ls</span></samp>&rsquo; which is supported for compatibility
with the Unix standard.

     <br><dt>&lsquo;<samp><span class="samp">%p</span></samp>&rsquo;<dd>Print the value of a pointer.  See <a href="Other-Output-Conversions.html#Other-Output-Conversions">Other Output Conversions</a>.

     <br><dt>&lsquo;<samp><span class="samp">%n</span></samp>&rsquo;<dd>Get the number of characters printed so far.  See <a href="Other-Output-Conversions.html#Other-Output-Conversions">Other Output Conversions</a>. 
Note that this conversion specification never produces any output.

     <br><dt>&lsquo;<samp><span class="samp">%m</span></samp>&rsquo;<dd>Print the string corresponding to the value of <code>errno</code>. 
(This is a GNU extension.) 
See <a href="Other-Output-Conversions.html#Other-Output-Conversions">Other Output Conversions</a>.

     <br><dt>&lsquo;<samp><span class="samp">%%</span></samp>&rsquo;<dd>Print a literal &lsquo;<samp><span class="samp">%</span></samp>&rsquo; character.  See <a href="Other-Output-Conversions.html#Other-Output-Conversions">Other Output Conversions</a>. 
</dl>

   <p>If the syntax of a conversion specification is invalid, unpredictable
things will happen, so don't do this.  If there aren't enough function
arguments provided to supply values for all the conversion
specifications in the template string, or if the arguments are not of
the correct types, the results are unpredictable.  If you supply more
arguments than conversion specifications, the extra argument values are
simply ignored; this is sometimes useful.

   </body></html>

