• 关于const限定符


    1.  指向非常量数据的非常量指针

      具有最高的数据访问极限 。不包含const关键字。

    2. 指向常量数据的非常量指针

      指针可以被改写,使其指向相应类型的任何数据项, 但是它所指向的数据项的值是不能被改写的。

      (const char *sPtr)  从右向左读为 sPtr 是一个指针, 指向字符串常量。

      使用指向常量数据的非常量指针传递像结构体这样的大数据对象,能同时兼备“按引用调用”的高效性和“按值调用”的安全性。

    指向常量数据的非常量指针

    3. 指向非常量数据的常量指针

      所指向的内存空间总是不变的,而存储在这个内存空间中的数据可以通过指针来改写。数组名的默认类型就是这种指针。

       在申明为const的指针时,必须同时对其进行初始化。

      int *const ptr;  从右向左读为 sPtr 是一个常量指针, 指向一个整型数据。

    指向非常量数据的常量指针

    4. 指向常量数据的常量指针  

      只有最小的访问权限,这样的指针所指向的内存空间总是不变的,且该内存空间中的数据也是不能被改写的。

      const int *const ptr;  从右向左读为 sPtr 是一个常量指针, 指向一个整型常量。

    {
        int x = 5;
        int y;
     
        const int *const ptr = &x;
    
        *ptr = 8;    //error
        ptr = &y;    //error
    
    }
  • 相关阅读:
    转载:山寨币凶猛
    Windows8.1 关机异常的解决
    Windows8、Windows8.1使用便签工具
    下载Sourceforge等国内无法下载站点文件的另一种方法
    专著出版成本计算
    PL2303 Windows8.1驱动
    转载:寒门再难出贵子
    华为荣耀品牌独立,子品牌战略能否实现新突破
    路由大战前夜,盘点智能路由的前世今生
    2020年实用工具推荐
  • 原文地址:https://www.cnblogs.com/jiaoge/p/4624011.html
Copyright © 2020-2023  润新知