定义常量

const int MAX_VALUE = 23;
const double Pi = 3.14;

定义常量指针

  • 不能通过常量指针修改其指向的内容

    1. int n, m;
    2. const int * p = & n;
    3. *p = 5 // 出错
    4. p = &m // ok
  • 不能把常量指针赋值给非常量指针,反过来可以

    1. const int *p1; int *p2;
    2. p1 = p2; // ok
    3. p2 = p1; // error
    4. p2 = (int*)p1 // 强制类型转换
  • 函数形参常常声明为常量指针

    1. void fun(const char* p) {
    2. strcpy(pm "this"); // error, strcpy第一个形参是char*
    3. printf("%s", p); // ok
    4. }