zoukankan      html  css  js  c++  java
  • const指针

      const指针这个问题,复习了好多次,每次看书的时候明白,但是过了一段时间之后没用,总会再次被搞糊涂。

      那么今天就把这个问题先用代码实现,把自己理解的写下来。代码在下面:

    1     int i = 5;
    2     int j = 10;
    3     const int* pi = &i;   
    4     int* const pj = &i;
    5     const int* const pp= &i;
    6     printf("pi:%d	pj:%d	pp:%d 
    ",*pi,*pj,*pp);
    7     pi = &j;
    8     *pj = 10;
    9     printf("pi:%d	pj:%d
    ",*pi,*pj);
    View Code

      先讲第一个:

    const int* pi = &i;

      当const在变量之前,指针pi指向的对象是可变的,但是指针(*pi)的值是不可变的。

      

    int* const pj = &i;

      当const在变量之后,指针pi指向的对象是不可变的,但是指针(*pi)的值是可变的。

    const int* const pp= &i;

      这个指针指向的对象和值都不能改变。

      其实const指针很简单,但是往往被面试官问的稀里糊涂的,一时混沌了,最好的理解方式就是动手写一个测试代码。

  • 相关阅读:
    MDK常用快捷键
    Visual C++ 6.0常用快捷键
    STM32内存映射
    STM32固件库
    MDK建立STM32F103*开发模板
    STM32下载方法
    Protel DXP画原理图常见错误与警告
    usb host和usb device
    IAR使用记录
    开发新产品的三个验证阶段(EVT/DVT/PVT)
  • 原文地址:https://www.cnblogs.com/liou/p/3215174.html
Copyright © 2011-2022 走看看