请结合例9.6程序分析下面两个程序能否实现两数交换功能?并说明为什么?
(1)
*void Swap(int *x,int *y)
{
int *pTemp;
*Temp=*x;
*x=*y;
*y=*pTemp;
程序不能够实现交换功能,int *pTemp;定义了一个指向整型变量变量的变量,指针变量的定义只是声明了指针变量的名字及其所能指向的数据类型,并没有说明指针变量究竟指向了哪里。在使用指针变量之前必须将其指向确定的内存单元。
请结合例9.6程序分析下面两个程序能否实现两数交换功能?并说明为什么?
(1)
*void Swap(int *x,int *y)
{
int *pTemp;
*Temp=*x;
*x=*y;
*y=*pTemp;
程序不能够实现交换功能,int *pTemp;定义了一个指向整型变量变量的变量,指针变量的定义只是声明了指针变量的名字及其所能指向的数据类型,并没有说明指针变量究竟指向了哪里。在使用指针变量之前必须将其指向确定的内存单元。