Re: brain teasers
- From: Ian Collins <ian-news@xxxxxxxxxxx>
- Date: Thu, 05 Apr 2007 19:20:39 +1200
Daniel Rudy wrote:
To the OP:
#define MAXSWAP 32 /* maximum size of variable swap */
int swap(void *a, void *b, int size)
{
char temp[MAXSWAP]; /* temp buffer */
if (size > MAXSWAP) return(-1);
memcpy(temp, a, size);
memcpy(a, b, size);
memcpy(b, temp, size);
return(0);
}
Now what's wrong with that?
Or even in modern C:
void swap( void *a, void *b, size_t size )
{
char temp[size];
memcpy(temp, a, size);
memcpy(a, b, size);
memcpy(b, temp, size);
}
--
Ian Collins.
.
- Follow-Ups:
- Re: brain teasers
- From: user923005
- Re: brain teasers
- From: Daniel Rudy
- Re: brain teasers
- From: Army1987
- Re: brain teasers
- From: Vishesh
- Re: brain teasers
- References:
- brain teasers
- From: viv342
- Re: brain teasers
- From: Martin Ambuhl
- Re: brain teasers
- From: rohitjogya@xxxxxxxxx
- Re: brain teasers
- From: Martin Ambuhl
- Re: brain teasers
- From: Daniel Rudy
- brain teasers
- Prev by Date: Re: wctomb function for AVR
- Next by Date: read a file's line into an array, error: makes pointer from integer without a cast
- Previous by thread: Re: brain teasers
- Next by thread: Re: brain teasers
- Index(es):
Relevant Pages
|