有实力的来瞧瞧吧
请高手看一下,我在用红色那一行的时候,最后的紫色两行输出是不相等的当我用蓝色那一行的时候,最后两行输出是相等的,也就出错的,我知道这肯定的数据类型的原因,但是至今没有在书上找到这一方面的说法,请详细指点,拜谢!
#include<iostream>
using namespace std;
void main()
{
int *p=new int;
cout<<"未赋值前的p的地址:\t"<<p<<endl;
cout<<"未赋值前的*p:\t\t"<<*p<<endl;
*p=3;
cout<<"赋值后的p的地址:\t"<<p<<endl;
cout<<"赋值后的*p:\t\t"<<*p<<endl;
delete p;
cout<<"释放后的p的地址:\t"<<p<<endl;
cout<<"释放后的*p:\t\t"<<*p<<endl;
double *p1=new double;
//long *p1=new long;
cout<<"创建p1后的p的地址:\t"<<p<<endl;
cout<<"创建p1后的*p:\t\t"<<*p<<endl;
cout<<"创建p1后的p1的地址:\t"<<p1<<endl;
cout<<"创建p1后的*p:\t\t"<<*p1<<endl;
*p1=999;
cout<<"p1后的p的地址:\t\t"<<p<<endl;
cout<<"p1后的*p:\t\t"<<*p<<endl;
cout<<"p1后的p1的地址:\t\t"<<p1<<endl;
cout<<"p1后的*p:\t\t"<<*p1<<endl;
*p=23;
cout<<"赋值后的p的地址:\t"<<p<<endl;
cout<<"赋值后的*p:\t\t"<<*p<<endl;
cout<<"赋值后的p1的地址:\t"<<p1<<endl;
cout<<"赋值后的*p1:\t\t"<<*p1<<endl;
delete p1;
}