首页 > 其他 > 详细

如何理解*

时间:2014-02-12 03:07:04      阅读:358      评论:0      收藏:0      [点我收藏+]

如何理解*

  const char*, char const*, char*const的区别问题几乎是C++面试中每次都会有的题目。 事实上这个概念谁都有,只是三种声明方式非常相似很容易记混。Bjarne在他的The C++ Programming Language里面给出过一个助记的方法: 把一个声明从右向左读。 

  char * const cp; ( * 读成 pointer to ) 
  cp is a const pointer to char 

  const char * p; 
  p is a pointer to const char; 

  char const * p; 
  同上因为C++里面没有const*的运算符,所以const只能属于前面的类型。 

  C++标准规定,const关键字放在类型或变量名之前等价的。

bubuko.com,布布扣
 1 char ** p1; 
 2 //    pointer to    pointer to    char 
 3 const char **p2;
 4 //    pointer to    pointer to const char 
 5 char * const * p3;
 6 //    pointer to const pointer to    char 
 7 const char * const * p4;
 8 //    pointer to const pointer to const char 
 9 char ** const p5;
10 // const pointer to    pointer to    char 
11 const char ** const p6;
12 // const pointer to    pointer to const char 
13 char * const * const p7;
14 // const pointer to const pointer to    char 
15 const char * const * const p8;
16 // const pointer to const pointer to const char
bubuko.com,布布扣

参考:http://blog.csdn.net/yingxunren/article/details/3968800

如何理解*

原文:http://www.cnblogs.com/tekkaman/p/3545074.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!