游子的博客
慈母手中线,游子身上衣, 临行密密缝,意恐迟迟归, 谁言寸草心,报得三春晖。 数据读取中,请稍候......
posts - 337,  comments - 546,  trackbacks - 0
以下文字简明的说明了const与*号位置关系

[欢迎访问http://liaoqs.bokee.com]

常指针 (我想常引用是一样的)

使用const修饰指针时,由于const的位置不同,而含意不同。下面举两个例子,说明它们的区别。

下面定义的一个指向字符串的常量指针

char * const prt1 = stringprt1;

其中,ptr1是一个常量指针。因此,下面赋值是非法的。

ptr1 = stringprt2;

而下面的赋值是合法的:

*ptr1 = "m";

因为指针ptr1所指向的变量是可以更新的,不可更新的是常量指针ptr1所指的方向(别的字符串)。

下面定义了一个指向字符串常量的指针

const char* ptr2 = stringprt1;

其中,ptr2是一个指向字符串常量的指针。ptr2所指向的字符串不能更新的,而ptr2是可以更新的。因此,

*ptr2 = "x";

是非法的,而:

ptr2 = stringptr2;

是合法的。

所以,在使用const修饰指针时,应该注意const的位置。定义一个指向字符串的指针常量和定义一个指向字符串常量的指针时,const修饰符的位置不同,前者const放在*和指针名之间,后者const放在类型说明符前。
posted on 2006-11-05 19:52 游子 阅读(501) 评论(0)  编辑 收藏 引用 所属分类: 软件
只有注册用户登录后才能发表评论。

欢迎大家扔鸡蛋!送鲜花!

博客可以收入过千吗?

<2006年4月>
日一二三四五六2627282930311234567
89101112131415161718192021222324252627282930123456

常用链接

留言簿(8)

随笔分类(314)

随笔档案(337)

文章分类(7)

文章档案(10)

相册

收藏夹(1)

其它

友情链接

数字电视

生活、旅游

自己的链接

计算机

搜索

  •  

积分与排名

  • 积分 - 407923
  • 排名 - 9

最新评论

阅读排行榜

评论排行榜