这两个程序有什么区别呢?#include void swap( int *p,int *q){ int *t;*t=*p; *p=*q; *q=*t;}main(){ int i=10,j=20,*a=&i,*b=&j;swap(a,b); printf("i=%d j= %d\n",i,j );}B)#include void swap( int *p,int *q){ int t;t=*p; *p=*q; *q=t;}main(){ int i

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 21:30:38
这两个程序有什么区别呢?#include void swap( int *p,int *q){ int *t;*t=*p; *p=*q; *q=*t;}main(){ int i=10,j=20,*a=&i,*b=&j;swap(a,b); printf(

这两个程序有什么区别呢?#include void swap( int *p,int *q){ int *t;*t=*p; *p=*q; *q=*t;}main(){ int i=10,j=20,*a=&i,*b=&j;swap(a,b); printf("i=%d j= %d\n",i,j );}B)#include void swap( int *p,int *q){ int t;t=*p; *p=*q; *q=t;}main(){ int i
这两个程序有什么区别呢?
#include
void swap( int *p,int *q)
{ int *t;
*t=*p; *p=*q; *q=*t;
}
main()
{
int i=10,j=20,*a=&i,*b=&j;
swap(a,b); printf("i=%d j= %d\n",i,j );
}
B)
#include
void swap( int *p,int *q)
{ int t;
t=*p; *p=*q; *q=t;
}
main()
{
int i=10,j=20,*a=&i,*b=&j;
swap(a,b); printf("i=%d j= %d\n",i,j );
}
*t=*p; *p=*q; *q=*t; 和 t=*p; *p=*q; *q=t;到底有什么区别呢?

这两个程序有什么区别呢?#include void swap( int *p,int *q){ int *t;*t=*p; *p=*q; *q=*t;}main(){ int i=10,j=20,*a=&i,*b=&j;swap(a,b); printf("i=%d j= %d\n",i,j );}B)#include void swap( int *p,int *q){ int t;t=*p; *p=*q; *q=t;}main(){ int i
void swap( int *p,int *q)
{ int *t; 这段代码是错的!此处定义一个指针变量,但,没有指定t指向哪里,是个野指针
*t=*p; *p=*q; *q=*t; //对野指针进行*操作,程序会死掉!
}
B是正确的写法
B)
#include
void swap( int *p,int *q)
{ int t; //这里只是想交换指针所指向的地址中的数据,t是用来保存临时数据的中转站,所以,t只要是个整型变量就可以了!
t=*p; *p=*q; *q=t;
}