const关键字作用

const int a;

int const a;

const int *a;

int * const a;

int const * a const;

/******/

前两个的作用是一样,a是一个常整型数。

第三个意味着a是一个指向常整型数的指针(也就是,整型数是不可修改的,但指针可以)。

第四个意思a是一个指向整型数的常指针(也就是说,指针指向的整型数是可以修改的,但指针是不可修改的)。

最后一个意味着a是一个指向常整型数的常指针(也就是说,指针指向的整型数是不可修改的,同时指针也是不可修改的)。

时间: 2024-12-22 09:41:44

const关键字作用的相关文章

关键字static和const的作用

一.在C语言中,关键字static的作用: (1)设置变量的存储域,函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次的值: (2)限制变量的作用域,在模块内的static全局变量可以被模块内所用函数访问,但不能被模块外其它函数访问: (3)限制函数的作用域,在模块内的static函数只可被这一模块内的其它函数调用,这个函数的使用范围被限制在声明它的模块内:(4)在类中的static成员变量意味着它为该类的所有实例所共享,也

C语言中const关键字的基本作用和用法

大家看到const关键字, 大多数人会不会认为它是一个const常量, 我告诉大家这是错误的认知, 那么它实际的意义是什么呢? 其实const不能把变量变成常量, 而是把一个变量, 变成了一个只读变量, 所以我们不能直接修改它的值, 但是我们可以通过它的地址, 来修改它的值. 1. const的普通用法 // const int n = 5; int const n = 5; // 这两句话的作用是一样的, 都是声明了一个名为a的只读变量, 我们不可以直接修改a的值. int a[n] = {1

const关键字详解

const在函数前与函数后的区别 一   const基础         如果const关键字不涉及到指针,我们很好理解,下面是涉及到指针的情况:         int   b   =   500;     const   int*   a   =   &b;              [1]     int   const   *a   =   &b;              [2]     int*   const   a   =   &b;              [3

c++中const关键字全面总结

一.const作用 1.const定义常量 注意:const只对它左边的东西起作用,唯一的例外就是const本身就是最左边的修饰符,那么它才会对右边的东西起作用. (1)const修饰变量,以下两种定义形式在本质上是一样的.它的含义是:const修饰的类型为TYPE的变量value是不可变的. TYPE const ValueName = value; const TYPE ValueName = value; (2)将const改为外部连接,作用于扩大至全局,编译时会分配内存,并且可以不进行初

详解C和C++中的const关键字

在讲下面的内容之前,要先看看这篇文章const.static变量的存储位置 一.C中的const 作用:(1)可以定义const常量,具有不可变性. (2)便于进行类型检查,使编译器对处理内容有更多了解,消除了一些隐患. (3)可以避免意义模糊的数字出现,同样可以很方便地进行参数的调整和修改. 同宏定义一样,可以做到不变则已,一变都变! (4)可以保护被修饰的东西,防止意外的修改,增强程序的健壮性. 还是上面的例子,如果在函数体内修改了i,编译器就会报错: (5) 可以节省空间,避免不必要的内存

C语言之头文件,static与const关键字

[前言] 最近几个月在做一个C语言代码重构的项目,过程中也让我对之前在书本上学习到的东西有些补充和巩固,在本博中总结记录下,梳理下零碎的知识点和经验也加深印象,书写是为了更好地思考.平时也都是用印象笔记之类的自己写写笔记,今天整理成博客,以便自己以后回顾. [正文] C语言头文件:将其理解为C语言模块化编程向外提供一个接口描述文件.一般包括一些供外部函数或者文件使用的变量声明,函数声明,数据类型定义以及宏定义等.举例: /*************************************

static和const关键字

static关键字至少有下列n个作用:   (1)函数体内static变量的作用范围为该函数体,不同于auto变量,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次的值:   (2)在模块内的static全局变量可以被模块内所用函数访问,但不能被模块外其它函数访问:   (3)在模块内的static函数只可被这一模块内的其它函数调用,这个函数的使用范围被限制在声明它的模块内:   (4)在类中的static成员变量属于整个类所拥有,对类的所有对象只有一份拷贝:   (5)在类中的stat

c++ const关键字

通常,不用const来区别数据的类型,在声明过程中,const关键字起到的是修饰限定的作用. 1 符号常量(通常,在赋初值后,其值不能改变:而常量在定义时必须赋初值) int i; const int k = 3; //标识符k代表的内存单元中存放的int型的数据,关键字const限定,不能通过该标识符k来修改所代表的内存单元中的int值 i和k代表的内存单元存放的都是int型数据,只是const限定的k为常量:符号常量,在声明时必须赋初值,赋初值后其值不能改变 下面尝试通过声明一个指针变量t引

游戏效率优化(2) 使用const关键字

游戏效率优化(2)使用const关键字 DionysosLai  2014-5-15 使用const有很多好处,比方保护被修饰的东西,防止意外修改,提高程序健壮性等作用.不过使用const 可以提高程序运行效率,却很少有人知道. 下面看几个例子,在看cocos2d源码时,我们经常会看到如下类似的代码: ccpAdd(const CCPoint& v1, const CCPoint& v2) { return v1 + v2; } ccpSub(const CCPoint& v1,