void swap(int **dp1,int **dp2)
{
int *temp = *dp1;
*dp1 = *dp2;
*dp2 = temp;
}
int main(void)
{
int num1=10, num2=20;
int *ptr1,*ptr2;
ptr1=&num1, ptr2=&num2;
swap(&ptr1,&ptr2);
printf("%d %d",*ptr1,*ptr2);
return 0;
}
ptr1 하고 ptr2하고 내용물 바꾸는 스왑함수인데 이게 잘이해가 안가;;
int *temp = *dp1; 이게 잘이해가 안가;;
temp 앞에 왜 *표시 해주는거야??? 그냥 temp값에 저장하는거 아니야???
T 형 변수의 내용을 서로 바꾼다: void swap(T* val1, T* val2) { T temp; ... }
주소는 포인터형 변수에 저장해주세요
dp1의 자료형이 int**니 *dp1 의 자료형은 int*
빡근 // 안그러면 대입할 때 에러나요?