#include <iostream.h>
#include <stdlib.h>
void swap(void *a, void *b, unsigned int size);
void memcpy(void * des, const void * sou, unsigned int lnt);
void main(void)
{
int n=5, k=6;
double d1=3.14, d2=2.54;
swap(&n, &k, sizeof(n));
swap(&d1, &d2, sizeof(d1));
cout << n << '\t' << k << endl;
cout << d1 << '\t' << d2 << endl;
}
void swap(void *a, void *b, unsigned int size)
{
void *t= malloc(size);
memcpy(t, a, size);
memcpy(a, b, size);
memcpy(b, t, size);
free(t);
}
void memcpy(void * des, const void * sou, unsigned int cnt)
{
char *d = (char *)des;
const char * s = (const char *)sou;
for(;cnt>0;cnt--) {
*d = *s;
d++, s++;
}
}
스왑은 요렇게
댓글 없음:
댓글 쓰기
국정원의 댓글 공작을 지탄합니다.