#include<stdio.h> #include<stdlib.h> void test1(int a){ printf("test1 method address:%d\n",&a); printf("test1 method %d\n",a); a = 2; } void test2(int& a){ printf("test2 method address:%d\n",&a); printf("test2 method %d\n",a); a = 2; } void test3(int* &p){ printf("method test3 a's address:%d\n",&p); } void test4(int* p){ printf("method test4 a's address:%d\n",&p); } int main(){ int a = 1; printf("main method a's address:%d\n",&a); test1(a); printf("after method test1 a = %d\n",a); test2(a); printf("after method test2 a = %d\n",a); int* pa = &a; printf("main method pa's address:%d\n",&pa); test3(pa); test4(pa); return 0; }