您的位置:首页 > 编程语言 > C语言/C++

经典C++数组指针学习题

2012-04-11 14:39 330 查看
#include<iostram>
using namespace std;
void fun(int *& a, int &m)
{
a=new int[m];      //A
int * p=a;
for(int i=0;i<m;i++)
*p++=i*i+1;
}
int main()
{   int  *b,n=5;
fun(b,n);
for(int i=0;i<n;i++)
cout<<b[i]<<' ';
cout<<endl;
delete[]b;             //B
}
运行结果是:

1 2 5 10 17

分析:指针变量在函数main中没有取得地址,所以在A行中,对被调用函数fun给对应的形参指针变量申请地址,即指针变量b和形参指针变量p指向同一组地址。B行对申请地址释放。

仔细研究吧,超经典!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: