论坛: 编程破解 标题: c关于指针的问题! 复制本贴地址    
作者: top [top]    论坛用户   登录
/*e09-03.c*/
main()
{
  int a,b;
  int *p_1,*p_2;
  a=100;b=10;
  p_1=&a;
  p_2=&b;
  printf("%d,%d\n",a,b);
  printf("%d,%d\n",*p_1,*p_2);
}
问结果,请说明原因!
*p_1 和p_1分别是什么意思?我的理解是一个是地址,一个是在这个地址的内容!于是我的答案就和夕阳给的答案不一样了!想知道是为什么!谢了!



[此贴被 偃月狂刀(top) 在 5月18日20时28分 编辑过]

地主 发表时间: 5/18 20:38

回复: top [top]   论坛用户   登录
结果调试和夕阳的答案一样!

但我不知道为什么,有知道的请说!

B1层 发表时间: 05/18 17:57

回复: fatcat [xu09]   论坛用户   登录
p_1=&a;//*把a的地址赋给p_1。。。。
p_2=&b;//*同上
printf("%d,%d\n",*p_1,*p_2);
输出的是地址里的内容。。。
  

B2层 发表时间: 05/18 21:47

回复: top [top]   论坛用户   登录
给地址!

结果是多少?

B3层 发表时间: 05/18 21:57

回复: dirboys [dirboys]   论坛用户   登录
两句应该结果相同阿

B4层 发表时间: 05/20 13:51

回复: cash [cash]   论坛用户   登录
100 10
100 10

B5层 发表时间: 05/20 15:06

回复: dizi0774 [dizi0774]   论坛用户   登录
p_1=&a;
p_2=&b;
就是把A和B的地址值赋予P_1和P_2;
指针变量前加*表示取指针值的意思.
既然P_1和P_2的值已指向A和B的地址,
*P_1和*P_2的值也就是A和B的值了.



B6层 发表时间: 05/20 20:54

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号