第八章指针 例8.7指针作函数参数。 void swap int maint b,*pl,*p2: a=10;b=20;,pl=&a;p2=&b swap(pl, p2) printf( "a=%d, b=%dn",a, b); /*printf("%d%d"*p1, *p2)*/ void swap (int*pa, int*pb Int temp; temp=pa pa=tpb; *pb=temp 运行结果: a=20.b=10 技術交
第八章 指 针 例 8.7 指针作函数参数。 void swap(int * x, int * y); main() { int a, b, *p1, *p2; a=10; b=20; p1=&a; p2=&b; swap(p1, p2); printf("a=%d, b=%d\n", a, b); /* 或printf(″%d %d″, *p1, *p2) */ } void swap(int *pa, int *pb { int temp; temp=*pa; *pa=*pb; *pb=temp; } 运行结果: a=20, b=10
第八章指针 20002001200220032004200520062007 2020202120222023 102020 2002 2000 2002 变量a变量b指针p1指针p2 指针pa指针pb 图8.7sap函数被调用时的内存分配图 …20002001200220032004200520062007…2020202120222023… 上10_202 2002 2000 2002 变量a变量b指针p1指针p2 指针pa指针pb 图88sNap函数调用结束时的内存分配图
第八章 指 针 图 8.7 swap函数被调用时的内存分配图 图 8.8 swap函数调用结束时的内存分配图
第八章指针 例88指针作函数参数 void swap(int, int *) maino int a, b, "pl, p2 a=10b=20;pl=&a;p2=&b swap(pl, p2) printf( a=%d, b=%dn",a, b); void swap ( int*pa, int*pb Inttemp; temp-=pa; pa=pb; b=temp; pl 果 a1b20
第八章 指 针 例 8.8 指针作函数参数。 void swap(int *, int *); main() { int a, b, *p1, *p2; a=10; b=20; p1=&a; p2=&b; swap(p1, p2); printf("a=%d, b=%d\n", a, b); } void swap(int *pa, int *pb { int *temp; temp=pa; pa=pb; pb=temp; } 运行结果: a=10, b=20
第八章指针 10 20 2000 2002 200020 变量a变量b指针p1指针p2 指针pa指针pb 图8.9sap函数被调用时的内存分配图 …20002001200220032004200520062007…2020202120222023 10 20 2000 2002 3202 2000 变量a变量b指针pl指针p2 指针pa指针pb 图8.10wap函数调用结束时的内存分配图
第八章 指 针 图 8.9 swap函数被调用时的内存分配图 图 8.10 swap函数调用结束时的内存分配图
第八章指针 例8.9指针作函数参数。 void swap(int*, int*) maino nt a, b,pl, "p2 a=10;b=20;pl=&a;p2=&b swap(pl, p2) printf("a=%d, b=%dn",a, b) void swap (int*pa, int*pb) int*temp; *temp=*pa pa= pb pb=*temp
第八章 指 针 例 8.9 指针作函数参数。 void swap(int *, int *); main() { int a, b, *p1, *p2; a=10; b=20; p1=&a; p2=&b; swap(p1, p2); printf("a=%d, b=%d\n", a, b); } void swap(int *pa, int *pb { int *temp; *temp=*pa; *pa=*pb; *pb=*temp; }