我的程序中的指针bd为什么读取不了b的地址???
#include <iostream>#include <math.h>
#include<cstdlib>
using namespace std;
double *a=new double[1000];
double *x=new double[1000];
double *b=new double[10];
double *c=new double[10000];
double *y=new double[10000];
int j=10000;
double *PI=new double[j];
double g;
double *ad;
double *xd;
double *bd;
double *cd;
double *yd;
int main ()
{
// AGM π计算程序
g=0;
a[1000]=1;
x[1000]=1;
b[10]=sqrt(2)/2;
c[10000]=0.25;
//给指针赋值:
ad = &a[1000];
xd = &x[1000];
bd = &b[10];
//重复计算
while (g<=10)
{
y[1000]=a[1000];
yd=&y[10000];
a[1000]=(*ad + *bd)/2;//a[1000]=(*ad + *bd)/2
b[10000]=sqrt(*bd * *yd);
c[10000]=*cd - *xd * (*ad - *yd) * (*ad - *yd);
x[1000]=*xd * 2;
g++;
}
PI[j]=(*ad + *bd) * (*ad + *bd) / (4 * *cd); //π
cout<<"π=";
cout<<PI[j];
cout<<endl;
system (" pause ");
delete [j]PI;
delete [100]a;
delete [100]x;
delete [1000]b;
delete [1000]c;
delete [1000]y;
return 0;
}