| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 703 人关注过本帖
标题:请教一个关于指针的问题
只看楼主 加入收藏
bwolfb
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2005-12-30
收藏
 问题点数:0 回复次数:7 
请教一个关于指针的问题
我刚学到C语言的指针这章,有句话弄不太明白:"决不要将一个地址常量赋给指针".
请问这句话该怎么理解?如果赋给了会有什么后果?
搜索更多相关主题的帖子: 指针 C语言 常量 地址 
2006-01-17 19:11
kankanba
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-10-24
收藏
得分:0 
指针变量中只能存放地址,不能将一个非地址类型的数据(如常数等)赋给一个指针变量
2006-01-17 19:32
云雷屯
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-1-17
收藏
得分:0 

[此贴子已经被作者于2006-1-17 20:14:55编辑过]


2006-01-17 19:38
aiyuheng
Rank: 1
等 级:新手上路
威 望:1
帖 子:656
专家分:0
注 册:2006-1-12
收藏
得分:0 

int a[20];
int *p;
p=a;可以啊!不太懂那些名词?等高手解释


when i want to ask anyone,i will ask myself first.
2006-01-17 19:59
kankanba
Rank: 1
等 级:新手上路
帖 子:62
专家分:0
注 册:2005-10-24
收藏
得分:0 
指针变量赋值

  p = &a; 变量a的地址赋给p,即指针p指向a

  p = array; 数组array首地址赋给p

  p = &array[i]; 数组元素array[i]的地址赋给p

  p = max; 函数max的入口地址赋给p

  p1 = p2; 指针p2的值赋给指针p1,即p1、p2所指的数据相同

2006-01-17 20:01
aiyuheng
Rank: 1
等 级:新手上路
威 望:1
帖 子:656
专家分:0
注 册:2006-1-12
收藏
得分:0 

解释的很明白啊 呵呵
我明白却不会说那些名词


when i want to ask anyone,i will ask myself first.
2006-01-17 20:15
污秽摇篮
Rank: 1
等 级:新手上路
帖 子:1259
专家分:0
注 册:2006-1-10
收藏
得分:0 
指针真是可以把人给弄晕...我现在还对指针晕忽着呢 改天好好看看

那天是你用一块红布,蒙住了我双眼也蒙住了天.
你问我看见了什么,我说我看见了幸福......
2006-01-18 22:50
bestee
Rank: 1
等 级:新手上路
帖 子:65
专家分:0
注 册:2006-1-19
收藏
得分:0 

首先要弄明白三个概念:变量名,地址,变量值。
举个例子
int a=3;
a是变量名;3是值;FFFFFF(乱写的,可以用&a得出)是地址;
值和地址是紧密联系的,只是存放在地址中的,而a只是为了程序员便于记忆给出的,想象如果变成的时候要用每个值的地址,那是多么恐怖!既然a只是个名字,那么我可以叫李四,也可以叫小李,也就是说变量也可以有很多名字,怎么办到呢?就是把变量名和地址联系起来,这样便一起就可以通过变量名寻找地址,从而取出地址存的值了。
具体来说:
int a=3;
int*ptr=a;
ptr是储存地址的值(不是变量值!),所以通过*运算就可以得出新的变量别名*ptr,这里的*是运算符号。
这个时候地址上就有两个名字了:a和*ptr
同样我们也可以直接把地址传递给指针:
int a=3;
ptr=&a
&是运算符,通过&a就可以得到a这个变量名所代表的值的地址了。
我们再来回忆一次:
3是值;
&a是地址值,通过&a可以找到3(值);
a是变量名,通过a可以寻找到&a(地址),然后找到3(值);
ptr是地址值,通过ptr可以寻找到3(值);
*ptr是变量名,通过*ptr可以寻找到ptr(地址),然后找到3(值);
我自己的一些理解,希望对你能有帮助!


[URL=http://blog.csdn.net/bestee]欢迎光临我的blog给我留言或者交换连接[/URL]

[此贴子已经被作者于2006-1-19 1:17:49编辑过]


欢迎光临我的blog! http://blog./bestee
2006-01-19 01:14
快速回复:请教一个关于指针的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016098 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved