C++求解答并解释,我看不明白
答案:3 悬赏:60 手机版
解决时间 2021-04-06 01:34
- 提问者网友:沉默菋噵
- 2021-04-05 15:44
C++求解答并解释,我看不明白
最佳答案
- 五星知识达人网友:有你哪都是故乡
- 2021-04-05 16:23
#include
main()
{
// p表示长整型指针变量,i表示长整型变量
long *p,i;
// 给让p指向一个内存地址
p=new long;
// 判断p是否指向了一个内存地址
if(!p){
cout<<"Allocation error
";
return 1;
}
// 向p指向的内存空间复制
*p=1000;
// 将p中的地址值赋给i
i=(long)p;
// 输出p指向的内存地址的值
cout<<"Here is integer at p:"<<*p<<"
";
// 输出i的值
cout<<"Here is i :" < ";
// 释放p所指向的内存,相当于断开p和p所指向的内存的关系
delete p;
return 0;
}
main()
{
// p表示长整型指针变量,i表示长整型变量
long *p,i;
// 给让p指向一个内存地址
p=new long;
// 判断p是否指向了一个内存地址
if(!p){
cout<<"Allocation error
";
return 1;
}
// 向p指向的内存空间复制
*p=1000;
// 将p中的地址值赋给i
i=(long)p;
// 输出p指向的内存地址的值
cout<<"Here is integer at p:"<<*p<<"
";
// 输出i的值
cout<<"Here is i :" < ";
// 释放p所指向的内存,相当于断开p和p所指向的内存的关系
delete p;
return 0;
}
全部回答
- 1楼网友:三千妖杀
- 2021-04-05 17:39
p是以个指针,在初始化的时候用动态分配的方式从堆区中取得了一个long型的地址空间,并给该地址赋值1000,该地址同时也代表一个long型的数,程序中赋给了i。这样*p就是1000,而p的地址就是i。这段程序主要告诉我们指针和指针指向的数值是不同的。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯