标题:动态内在分配和指针请教
只看楼主
yi157
Rank: 1
等 级:新手上路
帖 子:151
专家分:0
注 册:2008-6-3
 问题点数:0 回复次数:3 
动态内在分配和指针请教
请问这里面的temp指针是不是多余的,它起了什么作用?
float *ad(const float a[],const float b[],int size)
{
float *p,*temp;
p=new float[size];
if(p==null)
    return p;
temp=p;
for(int i=0;i<size;i++)
    *temp++=a[i]+b[i];
return p;
}
搜索更多相关主题的帖子: 指针 动态 
2008-10-17 21:14
smltq
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:566
专家分:400
注 册:2008-1-21
得分:0 
完全可以去掉...

简单的生活
2008-10-17 21:46
debroa723
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:23
帖 子:862
专家分:1954
注 册:2008-10-12
得分:0 
不能去掉.
temp是个临时游标,执行完后它会指向数组的尾部.而p还指向数组头部,返回它是正确的.
如果非要去掉,直接使用p,那么在返回的时候,要返回
return (p-size);
让它再回到数组的头部.
2008-10-17 23:20
yi157
Rank: 1
等 级:新手上路
帖 子:151
专家分:0
注 册:2008-6-3
得分:0 
回复 3# debroa723 的帖子
三言两语破天机啊,多谢多谢!
2008-10-18 22:05



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-238906-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.146879 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved