double *p; (指针需要初始化!)表示定义了一个指向double的指针(指向首地址)
而p+1 则表示指针指向首地址的第二个元素,
*(p+1) 表示指针指向的实际数据
你这样写的错误的,定义的*p指针没有指向任何地址,*(p+1)输出会报错。
double a[2]={0,1}; double *p =a; cout<<*(p+1);
这样的话可以输出1
double *p;
cout << *(p + 1);输出-1.13838e+22
@阿克西斯教成员污米饭: 定义的指针没有初始化,会指向任意一个地址,所以*(p+1)可以输出。如果定义的指针是空的,不指向任何地址。就会报错。