#include<iostream>
using namespace std;
int main()
{
double * p3=new double[3];
p3[0]=0.2;
p3[1]=0.5;
p3[2]=0.8;
cout<<"p3[1] is"<<p3[1]<<endl;
p3=p3+1;
cout<<"Now p3[0] is"<<p3[0]<<endl;
cout<<"p3[1] is"<<p3[1]<<endl;
p3=p3-1;
delete [] p3;
return 0;
}
下面是该程序的输出:
p3[1] is 0.5
Now p3[0] is 0.5 and p3[1] is 0.8
从中可以知道,将指针可以当数组名来用,p3[0]为第一个元素,依次类推。下面的代码行指出了数组名和指针之间的区别。
p3=p3+1;
不能修改数组名的值。但指针是变量,因此可以修改他的值。注意将p3加1的效果。表达式p3[0]现在指的是数组的第二个值。因此,将p3加1导致它指向第2个元素而不是第1个元素。将它减1后,指针将指向原来的值,这样程序便可以给delete[]提供正确的地址。
颜笑Qq:877451122
加我一起讨论C++技术哦!!!!!
时间: 2024-10-13 03:15:36