2011년 4월 12일 화요일

cpp] 예제로 바로 알아보는 c와 c++ - 10

#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++;
 }
}


스왑은 요렇게

댓글 없음:

댓글 쓰기

국정원의 댓글 공작을 지탄합니다.

UPBIT is a South Korean company, and people died of suicide cause of coin investment.

 UPBIT is a South Korean company, and people died of suicide cause of coin. The company helps the people who control the market price manipu...