首页 > 其他分享 >用const修饰指针

用const修饰指针

时间:2023-03-24 21:55:38浏览次数:29  
标签:const 常量 指向 数据类型 修饰 变量名 指针

1)常量指针

语法:const 数据类型 *变量名;

不能通过解引用的方法修改内存地址中的值(用原始的变量名是可以修改的)。

注意:

l 指向的变量(对象)可以改变(之前是指向变量a的,后来可以改为指向变量b)。

l 一般用于修饰函数的形参,表示不希望在函数里修改内存地址中的值。

l 如果用于形参,虽然指向的对象可以改变,但这么做没有任何意义。

l 如果形参的值不需要改变,建议加上const修饰,程序可读性更好。

2)指针常量

语法:数据类型 * const 变量名;

指向的变量(对象)不可改变。

注意:

l 在定义的同时必须初始化,否则没有意义。

l 可以通过解引用的方法修改内存地址中的值。

l C++编译器把指针常量做了一些特别的处理,改头换面之后,有一个新的名字,叫引用。

3)常指针常量

语法:const 数据类型 * const 变量名;

指向的变量(对象)不可改变,不能通过解引用的方法修改内存地址中的值。

常引用。

 

常量指针:指针指向可以改,指针指向的值不可以更改。

指针常量:指针指向不可以改,指针指向的值可以更改。

常指针常量:指针指向不可以改,指针指向的值不可以更改。

记忆秘诀:*表示指针,指针在前先读指针;指针在指针就不允许改变。

常量指针:const 数据类型 *变量名

指针常量:数据类型 * const 变量名

1)常量指针

语法:const 数据类型 *变量名;

不能通过解引用的方法修改内存地址中的值(用原始的变量名是可以修改的)。

注意:

l 指向的变量(对象)可以改变(之前是指向变量a的,后来可以改为指向变量b)。

l 一般用于修饰函数的形参,表示不希望在函数里修改内存地址中的值。

l 如果用于形参,虽然指向的对象可以改变,但这么做没有任何意义。

l 如果形参的值不需要改变,建议加上const修饰,程序可读性更好。

2)指针常量

语法:数据类型 * const 变量名;

指向的变量(对象)不可改变。

注意:

l 在定义的同时必须初始化,否则没有意义。

l 可以通过解引用的方法修改内存地址中的值。

l C++编译器把指针常量做了一些特别的处理,改头换面之后,有一个新的名字,叫引用。

3)常指针常量

语法:const 数据类型 * const 变量名;

指向的变量(对象)不可改变,不能通过解引用的方法修改内存地址中的值。

常引用。

 

常量指针:指针指向可以改,指针指向的值不可以更改。

指针常量:指针指向不可以改,指针指向的值可以更改。

常指针常量:指针指向不可以改,指针指向的值不可以更改。

记忆秘诀:*表示指针,指针在前先读指针;指针在指针就不允许改变。

常量指针:const 数据类型 *变量名

指针常量:数据类型 * const 变量名

标签:const,常量,指向,数据类型,修饰,变量名,指针
From: https://www.cnblogs.com/xionglaichuangyichuang/p/17253465.html

相关文章

  • 指针用于函数的参数
        如果把函数的形参声明未指针,调用的时候把实参的地址传进去,形参中存放的是实参的地址,在函数中通过解引用的方法直接操作内存中的数据,可以修改实数的值,这种方法......
  • const在c语言和c++中的区别
    1.c语言中的const变量 c语言中const变量是只读变量,有自己的存储空间2.c++中的const常量可能分配存储空也可能不分配存储空间当const常量为全局,并且需要......
  • const对象分析
    const定义一个常量,常量定义以后就不能被修改。1classA{2public:3inta;4int*b;5int&c;6A():a(1),b(newint(1)),c(*newint(1)){......
  • sql预编译参数设置为null导致空指针异常
    编写的公共查询方法  在Dao层调用我们的公共查询方法并将params设置为了null  报错空指针异常  解决方法:将params设置为一个空的数组 ......
  • 快慢指针-lc876链表的中间节点
    给你单链表的头结点head,请你找出并返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。示例1:输入:head=[1,2,3,4,5]输出:[3,4,5]解释:链表只有一个中间......
  • C++ this 指针
    在C++中,每一个对象都能通过 this 指针来访问自己的地址。this 指针是所有成员函数的隐含参数。因此,在成员函数内部,它可以用来指向调用对象。友元函数没有 this 指......
  • what's the difference between const and constexpr in C++?
    BothconstandconstexprareusedtodefineconstantsinC++,buttheyhavedifferentmeaningsandusecases.constisusedtodeclareavariableasconstant,......
  • 指针与链表
    指针与链表各位CTFer可以忽略这篇文章~各位CTFer可以忽略这篇文章~各位CTFer可以忽略这篇文章~指针指针的定义指针对于变量来讲就像单人间的宿舍号一样。每个人(变量......
  • null对象可以访问它所属类的类成员(即static修饰的成员),但是null对象访问实例成员将会引
    null对象可以访问它所属类的类成员(即static修饰的成员),但是null对象访问实例成员将会引发错误。publicclassNullAccessStatic{publicinta;privatestati......
  • Java String 避免空指针的方法
    1.方法1判等时将变量作为参数或者使用TextUtils工具"".equals(name)TextUtils.equals(name,null)2.方法2使用TextUtils工具TextUtils.isEmpty(name)3.使用tryc......