Shallow vs. deep copy problem

#include <stdio.h>
int main(int argc, char *argv[])
{
    you x = 2 ;
    you y = x;
    
    int* p1 = &x;
    int* p2 = p1;
    the printf ( " copy only values, no copy address \ n- " );
    printf("深拷贝:x  = %p,value = %d\n",&x,x);
    printf("深拷贝:y  = %p,value = %d\n",&y,y);
    the printf ( " copy only address that does not copy the value \ n- " );
    the printf ( " shallow copy:% P = P1, value D =% \ n- " , P1, * P1);
    printf("浅拷贝:p2 = %p,value = %d\n",p2,*p2);
    return 0;
}

/*
Run c ---------- ----------
Copy only values, no copy address
Deep copy: x = 0060FEF4, value = 2
Deep copy: y = 0060FEF0, value = 2
Copy address only, not copied value
Shallow copy: p1 = 0060FEF4, value = 2
Shallow copy: p2 = 0060FEF4, value = 2

Output completion (Processed 0 seconds) - normal termination
*/

 

Guess you like

Origin www.cnblogs.com/axuanup/p/12629441.html