c语言指针的使用

列题:进行函数值交换

(1)typedef  unsign char   uar;

void   Data_Deal(uar * p, uar *j )
{
   uar *temp;
     temp =p;
     p=j;
     j=temp;
}

这个是不对的,这个只是进行了指针地址的呼唤没有进行值的交换

void   Data_Deal(uar * p, uar *j )
{
   uar *temp;
     *temp =*p;
     *p=*j;
     *j=*temp;
}

这样也不对,没有给temp初始地址,如果定义 uar  *temp=0 也是不对的,指针不能为空

正确做法   void   Data_Deal(uar * p, uar *j )
{
   uar temp;
     temp =*p;
     *p=*j;
     *j=temp;
}

或者在原先基础上改,uar  t=0;

                                  uar  *temp;

                                    temp=&t;

 然后进行交换。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值