Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #26645

Re: Swapping logic

From Nobody <nobody@nowhere.com>
Subject Re: Swapping logic
Date 2012-09-24 10:57 +0100
Message-Id <pan.2012.09.24.09.57.48.376000@nowhere.com>
Newsgroups comp.lang.c
References <49f36538-d5ca-411c-bc58-1f17b55911b6@s8g2000vbc.googlegroups.com> <k3ndov$832$1@dont-email.me> <k3njsc$gjs$1@dont-email.me>
Organization Zen Internet

Show all headers | View raw


On Sun, 23 Sep 2012 14:19:51 -0400, Eric Sosman wrote:

>> I think you're looking for:
>> x ^= y;
>> y ^= x;
>> x ^= y;
> 
>      Don't do this.  See Question 20.15c on the comp.lang.c
> Frequently Asked Questions (FAQ) page, <http://www.c-faq.com/>.

And especially don't do this (or equivalent):

	*p ^= *q;
	*q ^= *p;
	*p ^= *q;

as it's equivalent to *p=0 if p==q.

Back to comp.lang.c | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Swapping logic ZUBAIR TRALI <bhat.zubair789@gmail.com> - 2012-09-23 05:48 -0700
  Re: Swapping logic Richard Damon <news.x.richarddamon@xoxy.net> - 2012-09-23 09:04 -0400
  Re: Swapping logic Eric Sosman <esosman@ieee-dot-org.invalid> - 2012-09-23 09:15 -0400
    Re: Swapping logic Noob <root@127.0.0.1> - 2012-09-24 12:56 +0200
  Re: Swapping logic Casey Carter <Casey_at_Carter_dot_net@dontspam.me.invalid> - 2012-09-23 11:35 -0500
    Re: Swapping logic Eric Sosman <esosman@ieee-dot-org.invalid> - 2012-09-23 14:19 -0400
      Re: Swapping logic Nobody <nobody@nowhere.com> - 2012-09-24 10:57 +0100
      Re: Swapping logic Andrew Smallshaw <andrews@sdf.lonestar.org> - 2012-09-26 05:20 +0000
        Re: Swapping logic Gareth Owen <gwowen@gmail.com> - 2012-09-26 06:46 +0100
          Re: Swapping logic David Brown <david@westcontrol.removethisbit.com> - 2012-09-26 08:16 +0200
            Re: Swapping logic Gareth Owen <gwowen@gmail.com> - 2012-09-26 17:51 +0100
  Re: Swapping logic Kaz Kylheku <kaz@kylheku.com> - 2012-09-23 18:19 +0000

csiph-web