免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 998 | 回复: 1
打印 上一主题 下一主题

指针的使用(1) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-02-17 16:13 |只看该作者 |倒序浏览
指针可谓是c中最灵活的一项内容,它应用广泛但是容易出错,有人说,如果没有掌握指针,
则没有掌握c,可见指针的重要性。其实,任何事物,如果仔细研究,就不怕掌握不了,
指针也不例外。关于指针,笔者认为应该按照使用的角度来认识和理解:
1。指针的定义:这个比较简单,和其它的数据类型并没有什么大的区别,无非多
敲一个*而已,需要注意的是定义的指针往往置为null,防止未经初始化就进行操作,如int *p=NULL;
2。初始化:这个比较重要,新手往往忘了初始化,造成程序出错。正确的初始化方法有:
        a.取址法: 通过取其它量的地址来给指针赋值,如int *p = &
        b.动态分配法:应用c++中的new来给指针动态分配一个地址,如int *p=new int,对于对象和变量,操作一样;
        c.赋值法:通过其它的指针给指针赋值,这时候要注意用来赋值的指针的合法性如:int *p = ptr;
3。使用:使用的过程就是对指针进行操作,常用的操作有:
        a.进行内存复制:这个时候一定要注意不能出现边界溢出,如memcpy(pDest,pSour,length);
        b.引用对象的成员:如p->;m_value;
        c.作为函数指针来指代函数,如(*pfunc)(int value1,int value2,int value3);
        d.其它应用等等。
4。销毁,指针使用完成之后,一定要进行必要的销毁操作,否则未经处理的指针是很危险的,
销毁的操作一般如下:
        delete p;
        p=NULL;
这2步缺一不可,因为delete之后,指针的值并没有置空,所以为了防止后面使用它,一定要将其置空。
指针的操作大致如上,其它问题在下一个专题中加以讨论。

论坛徽章:
0
2 [报告]
发表于 2004-02-17 16:26 |只看该作者

指针的使用(1)

很好。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP