1. 程式人生 > >常量指標,指向常量的指標和指向常量的常指標的區別

常量指標,指向常量的指標和指向常量的常指標的區別

  1. 常量指標:本身不可以修改,指向的目標可以被修改。
    • int *const p=&a;//p只能儲存a的地址,但是a的值可以改變。
    • 如果定義指向物件的指標,不能改變使其指向其他的物件。
  2. 指向常量的指標:只是限制修改它指向的目標,它本身是可以修改的。
    • int const *p=&a;//p可以指向其他的值,但是a的值不能通過*p改變,給a賦其他的值還是可以的。
    • int const *p=&a;同const int *p=&a;
    • 如果定義指向物件的指標,不能使用該指標改變類的成員變數,也不能呼叫該類的改變類的成員變數值的函式;可以呼叫不改變類的成員變數的函式。
  3. 指向常量的常指標:本身和指向的值都不能修改
    • const int *const p=&a;
    • 含有常量指標和指向常量的指標的所有特點。