在第二节,我们说到了,如果没有对指针进行初始化就改变它所指向的内存里的数据是非常危险的。因为不确定的指针有可能指向了一个系统需要的关键数据,数据一旦被更改或破坏系统就会崩溃。在我们使用电脑磁盘的时候,都知道有一种措施叫做“写保护”。(或者称为“只读”,即只可以读,不可以写)那么,我们能否给指针加上写保护呢?
给内存中的数据加写保护的方法是在声明指针时,在指针类型(即各种数据类型)前加上const,表示这些数据是常量,只能读不能写。比如:const int *iptr;,这时候我们只能够通过指针iptr读出内存里的数据,但是不能对其写入、修改。
当然,这样的保护措施只是防止通过间接引用iptr修改内存中的数据,并不保护iptr本身和iptr所指向的变量。
对内存只读的指针
为了解决指针可能误修改或破坏内存中的数据,我们可以对内存中的数据加上写保护。即具有这种属性的指针只能够读出内存中的数据,却不能修改内存中的数据。我们把具有这种属性的指针称为指向常量的指针,简称常量指针。给内存中的数据加写保护的方法是在声明指针时,在指针类型(即各种数据类型)前加上const,表示这些数据是常量,只能读不能写。比如:const int *iptr;,这时候我们只能够通过指针iptr读出内存里的数据,但是不能对其写入、修改。
当然,这样的保护措施只是防止通过间接引用iptr修改内存中的数据,并不保护iptr本身和iptr所指向的变量。










