啊哈磊_编程从这里起步

标题: 指针问题无聊的看看! [打印本页]

作者: 超神级    时间: 2013-9-12 22:54
标题: 指针问题无聊的看看!
本帖最后由 超神级 于 2013-9-12 23:36 编辑
  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. int *p=new int;
  6. *p=2;//这里并未用取址符!
  7. cout<<"(输出*p的值)"<<*p<<endl;
  8. cout<<"输出指针的地址"<<&p<<endl;
  9. cout<<"(不知道这个地址是谁的难道是{2}的)"<<p<<endl;
  10. delete p;
  11.         system("pause");
  12.         return 0;
  13. }
复制代码
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main()
  4. {
  5.     int*p,a;
  6.     a=2;
  7.     p=&a;//如果换一种思维*P=2或*p=a。。C++堆指针行C怎么不行!或者一个是栈一个是堆的原因
  8.       printf("指针指向地址的值(%d)\n",*p);
  9.             printf("a的地址(%d)\n",p);
  10.          printf("指针P自己的地址(%d)\n",&p);
  11.         system("pause");
  12.         return 0;
  13. }
复制代码

]B@$A5J9%B])7F_1SZ$NH7C.jpg (55.74 KB, 下载次数: 9)

]B@$A5J9%B])7F_1SZ$NH7C.jpg

1%SK7_H]OPLE5`WK$)])JQD.jpg (53.8 KB, 下载次数: 8)

1%SK7_H]OPLE5`WK$)])JQD.jpg

作者: rosynirvana    时间: 2013-9-12 22:54
其实我觉得指针最容易困惑的地方不是指针变量的地址,而是声明和初始化时候的写法……
作者: 超神级    时间: 2013-9-12 23:38
我试了一下!放在栈中不行!在堆中可以!
作者: rosynirvana    时间: 2013-9-12 23:41
最后一个是2的地址

另外用%d输出指针是错误的,指针有个自己的占位符 %p
作者: 超神级    时间: 2013-9-12 23:43
现在对于栈跟堆的概念还不是很清楚。。
作者: 超神级    时间: 2013-9-12 23:43
现在对于栈跟堆的概念还不是很清楚。。
作者: 超神级    时间: 2013-9-12 23:46
rosynirvana 发表于 2013-9-12 22:54
其实我觉得指针最容易困惑的地方不是指针变量的地址,而是声明和初始化时候的写法……

嗯!           
作者: 超神级    时间: 2013-9-12 23:50
rosynirvana 发表于 2013-9-12 23:41
最后一个是2的地址

另外用%d输出指针是错误的,指针有个自己的占位符 %p

%p第一次看的!原来指针还有自己的占位符!我看的过的书的没说过....
作者: rosynirvana    时间: 2013-9-13 00:15
超神级 发表于 2013-9-12 23:38
我试了一下!放在栈中不行!在堆中可以!

没明白这句什么意思
作者: 超神级    时间: 2013-9-13 10:25
rosynirvana 发表于 2013-9-13 00:15
没明白这句什么意思

堆说的是堆区链表的储存方式!栈说的是栈的先进后出储存方式............这些概念我也不是很清楚........................................
作者: rosynirvana    时间: 2013-9-13 11:06
本帖最后由 rosynirvana 于 2013-9-13 11:07 编辑
超神级 发表于 2013-9-13 10:25
堆说的是堆区链表的储存方式!栈说的是栈的先进后出储存方式............这些概念我也不是很清楚........ ...

栈先进后出也不关你的事情的,完全是编译器来处理的
堆上分配了就要负责回收
堆也不一定是链表
作者: 超神级    时间: 2013-9-13 14:09
rosynirvana 发表于 2013-9-13 11:06
栈先进后出也不关你的事情的,完全是编译器来处理的
堆上分配了就要负责回收
堆也不一定是链表

额............
作者: cad20020601    时间: 2013-9-13 20:59
哦。。。。。
作者: cad20020601    时间: 2013-9-13 21:07
努力的刷帖升级哈哈
作者: cad20020601    时间: 2013-9-13 21:08
嘿咻嘿咻~~
作者: cad20020601    时间: 2013-9-13 21:08
加油哈哈      
作者: 超神级    时间: 2013-9-13 21:14
cad20020601 发表于 2013-9-13 21:08
加油哈哈

en!你也加油!
作者: 4399APPLE    时间: 2013-10-9 11:02
努力的刷帖升级哈哈




欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/) Powered by Discuz! X3.2