• 浅谈const char*,char* const,const char* const的区别


    第一种: const char*

    const修饰的是char(因为它靠char更近),这时它不能被修改,但可以指向别的变量(因为它修饰的不是指针,所以可以指向别的地址),举个例子吧:

    const char* s="legend";
    s[0]='s';//这样是错的!因为它不能被修改!
    char* p="hero";
    s=p;//可以这样,因为它可以指向别的变量

    第二种: char* const

    const 修饰的是*,即指针,表明它只能指向这个地址,不能指向别的变量,但是可以对值进行修改,例如:

    char* const s="legend";
    s[0]='s';//这是可以的,它可以对值进行修改
    char* p="hero";
    s=p;//这是错误的!因为const修饰的是指针,地址是不能改变的!所以不能再指向别的变量啦!

    第三种: const char* const

    这种就综合了以上两种,既不能改变值,又不能指向别的变量,例:

    const char* const s="legend";
    s[0]='s';//错误!值不能被修改
    char* p="hero";
    s=p;//错误!它不能再指向别的值!
  • 相关阅读:
    poj2192
    poj2002
    poj2190
    poj2001
    poj2195
    自我成长:20岁到40岁的简单人生规划
    最容易让人失恋的十种职业
    职场发展的5W问题(对我影响很大)
    你个人知识管理了吗?
    安慰人的10大原则——当不知该说什么时
  • 原文地址:https://www.cnblogs.com/YLJ666/p/12722783.html
Copyright © 2020-2023  润新知