关于 const char *ptr,char const *ptr,char *const ptr 的讨论

  对于每个做C/C++的伙伴来说,面试中少不了关于const 的考察,尤其是对于刚毕业的新人。

今天听见同事在讨论这个问题,就随手写一下自己的理解。希望对大家又所帮助。

首先来说一下char *ptr:

          

 

const char *ptr,和char const *ptr作用一样,因为const 后修饰的都是 *ptr,也就是说 *ptr是常类型、不能修改,说白了就是不能通过*ptr修改值。可以直接通过str变量来修改str的值,但是确不能通过ptr指针来修改。

char *const ptr,const后修饰的是ptr,不能修改ptr指针,但是可以修改该指针指向的内容。

posted @ 2018-08-30 11:42  自强·  阅读(664)  评论(0编辑  收藏  举报