美文网首页
常量指针和指针常量

常量指针和指针常量

作者: 无用书生繁华梦 | 来源:发表于2020-02-25 21:04 被阅读0次
        int x = 5;
        int y = 10;
        const int* p = &x;  //可以理解为修饰的是 这个内存中的地址里的值 不可修改   常量指针
        int* const q = &x;  //指针本身是可读的  const修饰的是指针本身       指针常量
        cout << q << endl;
        //*p = 8;    //报错,不可修改
        *q = 8;     //不报错,可以修改
        //q = &y;   //报错,因为常量修饰,不能赋值
        cout << q << endl;
        cout << x << endl;
    
    void fun(const int*a)
    {   
        int b = 89;
        a = &b;
        //*a = 65;  //const修饰的是a,表达式必须是可修改的左值
        std::cout << "传入:" << a << std::endl;
    }
    int main()
    {
        int a = 10;
        std::cout << "初始值:" << &a << std::endl;
        fun(&a);
        std::cout << "计算后:" << &a  << std::endl;
    }
    初始值:00BDFA8C
    传入:00BDF9A4
    计算后:00BDFA8C
    

    相关文章

      网友评论

          本文标题:常量指针和指针常量

          本文链接:https://www.haomeiwen.com/subject/rlxfchtx.html