const int* wusi(int i) { return &i; } const int wusi2(int i) { return i; } struct B { int b; }; struct A { int a; B b; }; void wusi(const A* a) { //a->a += 3; //a->b.b += 3; test(a->a); test(a->b.b); } void main() { const int i = 3; const int* w = &i; int a = i; a = i; const int* b = nullptr; const int** c = &b; const int* d = *c; b = wusi(3); a = wusi2(3); int* test = new int[5]; delete test; //i += 3; int* e = nullptr; b = e; test(i + 1); test(e == d); test(e != d); A s; s.a = 3; s.b.b = 5; wusi(&s); }