printf the value of %n in the same call - senseless? : <p>I can't find out the intention of the following part of <code>printf</code> specification at <a href="http://en.cppreference.com/w/cpp/io/c/fprintf" rel="noreferrer">cppreference.com</a>:</p>

<blockquote>
  <p>There is a sequence point after the action of each conversion
  specifier; this permits storing multiple %n results in the same
  variable and <strong>printing the value stored by %n earlier within the same
  call.</strong></p>
</blockquote>

<p>This reads as if the result of one (or even several) <code>%n</code> conversion specifier(s) could be printed out in the same <code>printf</code>-statement. 
But I can't find out how this could ever be achieved, because all arguments passed to a call of <code>printf</code> are evaluated before <code>printf</code>'s body is entered (there is a sequence point after argument evaluation). Hence, the value of a variable to which a <code>%n</code> would write is evaluated before <code>printf</code> has the chance to overwrite this variable's value with the "number of characters written so far":</p>

<pre><code>#include &lt;stdio.h&gt;

int main( int argc, char* argv[] )
{
    int n = 0;
    printf("Hello, world!%n (%d first n); %n (%d second n)", &amp;n ,n, &amp;n, n);
    // will print out "Hello, world! (0 first n);  (0 second n)"

    return 0;
}
</code></pre>

<p>My question: If there isn't any chance of "printing the value stored by %n earlier within the same call", isn't then the respective part of the <code>printf</code> specification senseless or misleading?</p>

<p>What is the actual sense of the <a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1124.pdf" rel="noreferrer">c99 standard</a> statement:</p>

<blockquote>
  <p>7.19.6 Formatted input/output functions
  (1) The formatted input/output functions shall behave as if there is a sequence point after the
  actions associated with each specifier.</p>
</blockquote>

<p>Is it to reduce the "chances" of getting undefined behaviour?</p>

<p>The question is tagged with c++ and c, because I think that this topic applies the same way to both languages.</p>
