| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 722 人关注过本帖
标题:关于指针的实例
只看楼主 加入收藏
RHL
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2010-3-17
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:4 
关于指针的实例
main()
{int *p,*h,*k=0;
int i=1,j=2;
p=&i;
h=&j;
k=p;
p=h;
h=k;
printf("%d %d",*p,*h);
}
注意*k=0(在C++中也只有0初始化给指针变量,其他的整数都不行,因为指针存放的是地址而不是整数,指针变量初始化为0是C++系统唯一允许的)。
  
该程序实现的是通过指针来实现值的互换:
希望这个例题能够帮助那些对理解指针有困难朋友,,
下面也有一些关于指针的知识:
1..指针变量遵循先定义后使用的规则。定义一个指针变量格式:
    <类型名> *<指针变量名1>[,*<指针变量名2>,...];
 式中的“*”是一个定义指针变量的说明符,它不是指定变量名的一部分。每个指针变量前面都需要这样的“*”来标明。例如:
    int    *pInt1, *pInt2;        // pInt1,pInt2是指向整型变量的指针
    float *pFloat;        // pFloat是一个指向浮点型变量的指针
    char     *pChar;        // pChar是一个指向字符型变量的指针,                它通常用来处理字符串
    指针后,系统会给指针分配一个内存单元,但分配的空间大小是相同的,因为指针变量的数值是某个变量的地址,而地址值的长度是一样的
定义一个C++中有两个专门用于指针的运算符:&(取地址运算符)、*(取值运算符)
 

    2..运算符“&”只能对变量操作,作用是取该变量的地址。运算符“*”用于指针类型的变量操作,作用是取该指针所指内存单元中存储的内容。例如:
    int    a = 6;        // 整型变量,初值为6
    int     *p = &a;        // 指向整型变量的指针,其值等于a的地址
    int    b = *p;        // 将指针所指的地址中的内容赋值给b,值为3。
    说明:注意区分int *p和 *p所代表的意思是不同的。


[ 本帖最后由 RHL 于 2010-3-19 15:21 编辑 ]
搜索更多相关主题的帖子: 实例 指针 
2010-03-19 11:25
chsteven
Rank: 2
等 级:论坛游民
帖 子:4
专家分:10
注 册:2010-3-19
收藏
得分:5 
太混乱了。楼主不妨在 指针操作前后分别执行下 printf("i=%d, j=%d", i, j);
看看有没有互换
2010-03-19 12:06
wei0000
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:80
专家分:136
注 册:2010-3-12
收藏
得分:5 
请问你这是小知识还是提问啊
2010-03-19 18:28
RHL
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2010-3-17
收藏
得分:0 
回复 3楼 wei0000
你好。。。有问题吗??
2010-03-19 19:23
apull
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:三体星系
等 级:版主
威 望:216
帖 子:1490
专家分:9104
注 册:2010-3-16
收藏
得分:0 
UP。。。。
2010-03-20 00:05
快速回复:关于指针的实例
数据加载中...
 
   



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

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