这两个程序有什么区别呢?#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/06/25 20:58:20
![这两个程序有什么区别呢?#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(](/uploads/image/z/13102174-46-4.jpg?t=%E8%BF%99%E4%B8%A4%E4%B8%AA%E7%A8%8B%E5%BA%8F%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%E5%91%A2%3F%23include+void+swap%28+int+%2Ap%2Cint+%2Aq%29%7B+int+%2At%3B%2At%3D%2Ap%3B+%2Ap%3D%2Aq%3B+%2Aq%3D%2At%3B%7Dmain%28%29%7B+int+i%3D10%2Cj%3D20%2C%2Aa%3D%26i%2C%2Ab%3D%26j%3Bswap%28a%2Cb%29%3B+printf%28%22i%3D%25d+j%3D+%25d%5Cn%22%2Ci%2Cj+%29%3B%7DB%EF%BC%89%23include+void+swap%28+int+%2Ap%2Cint+%2Aq%29%7B+int+t%3Bt%3D%2Ap%3B+%2Ap%3D%2Aq%3B+%2Aq%3Dt%3B%7Dmain%28%29%7B+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
这两个程序有什么区别呢?
#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;
}