• const修饰的指针类型


    #define _CRT_SECURE_NO_WARNINGS
    #include<stdio.h>
    #include<string.h>
    #include<stdlib.h>
    #include<math.h>
    #include<time.h>

    int main01()

    {

    //常量

      const int a=10;

      //a=100;//err不能修改

    //通过指针间接修改常量的值

      int*p=&a;

      *p=100;

      printf("%d ",a);

      printf("%d ",*p);

      return 0;

    //结果

    }

    int main02()

    {

    //const修饰指针类型,可以修改指针变量的值,不可以修改指向内存空间的值(const紧挨谁则不能修改谁)

      int a=10;

      int b=20;

      const int*p=&a;

      //*p=100;//err

      p=&b;

      printf("%d ",*p);

      return 0;

    //结果

    }

    int main03()

    {

    //const修饰指针变量:可以修改指针指向内存空间的值,不可以修改指针变量的值(const紧挨谁则不能修改谁)

      int a=10;

      int b=20;

      int*const p=&a;

      //p=&b;//err

      *p=20;

      printf("%d ",*a);

      return 0;

    //结果

    }

    int main04()

    {

    //const修饰指针类型,修饰指针变量

      int a=10;

      int b=20;

    //只读指针;一级指针存储普通变量a的值

      const int* const p=&a;

      //*p = 100;//err

      //p = &b;//err

    //通过二级指针指向一级指针对应的空间,存储一级指针p的值;再通过二级指针可以间接修改一级指针的值,也可以修改一级指针指向内存空间的值

      int**pp=&p;

    //通过二级指针里的一级指针,修改对应内存空间的值

      * pp=&b;

      printf("%d ",*p);

    //修改一级指针对应的内存空间的值

      **pp=100;

      printf("%d ",*p);

      

      return 0;

    //结果   

     

    }

  • 相关阅读:
    第四次博客
    第三次作业
    第二次作业
    入学的第一次作业
    第四次作业
    第三次作业
    第二次随笔作业
    第一次随笔
    第四次作业
    第三次作业
  • 原文地址:https://www.cnblogs.com/wanghong19991213/p/13546340.html
Copyright © 2020-2023  润新知