linux-c-programming.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* why right-to-left evaluation in printf argument list?
@ 2007-05-24  4:28 Shriramana Sharma
  2007-05-25 16:43 ` Mariusz Kozlowski
  2007-05-25 22:54 ` Glynn Clements
  0 siblings, 2 replies; 3+ messages in thread
From: Shriramana Sharma @ 2007-05-24  4:28 UTC (permalink / raw)
  To: Linux C Programming List

For you people this is probably old hat but none of my book sources 
explain the C / C++ idiosyncrasy of evaluating arguments of printf (and 
maybe other functions too, I don't know) from right-to-left. For 
instance, the following code:

# include <stdio.h>
void main ( void )
{
	int i = 0 ;
	printf ( "%d %d\n", i ++, i ++ ) ;
}

prints out:

1 0

instead of:

0 1

as expected. I remember having heard of this years ago and got around to 
testing it today, but I don't get the logic behind this behaviour. Is 
there one? If yes, what is it?

Thanks.

Shriramana Sharma.


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-05-25 22:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-05-24  4:28 why right-to-left evaluation in printf argument list? Shriramana Sharma
2007-05-25 16:43 ` Mariusz Kozlowski
2007-05-25 22:54 ` Glynn Clements

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).