数组元素与变量类似,无法被更改,一旦更改,编译报错。 3. 修饰指针 const int *p1; 指针所指向的内容只读,指针的指向可以改变 int const *p2; 指针所指向的内容只读,指针的指向可以改变 int * const p3; 指针只读,指针的指向不可改变 const int * const p4; 指针本身和它指向的数据都是只读的 int const *...
const作为一个类型限定词,和int有相同的地位。 const int a; int const a; 是等价的。于是此处我们一定要清晰的明白,const修饰的对象是谁,是a,和int没 有关系。const 要求他所修饰的对象为常量,不可被改变,不可被赋值,不可作为左值(l-value)。 这样的写法也是错误的。 const int a; a=0; 这是一个很...
可以理解为const修饰指针(p3) ,表示const修饰的指针的指向不能改变,但是指针指向的内容可以改变。 //第三种修饰,指针常量,const修饰的是指针变量p3,表示p3指向的地址不能改变,但是指向地址中保存的数值是可以改变的 int * const p3; 例子 #include<stdio.h>intmain(){inta=2;intb=80;int*constp=&a;*p=5;...
const int* const p; 说明p自己是常量,且p指向的变量也是常量。 于是 p+=8; //非法 *p=3; //非法 const 还有一个作用就是用于修饰常量静态字符串。 例如: const char* name="David"; 如果没有const,我们可能会在后面有意无意的写name[4]='x'这样的语句,这样会导致对只读内存区域的赋值,然后程序会立...
C语言中const还可以修饰数组,举例如下: 代码语言:javascript 复制 constint array[5]={1,2,3,4,5};array[0]=array[0]+1;//错误 数组元素与变量类似,具有只读属性,不能被更改;一旦更改,如程序将会报错。 3、 修饰指针 C语言中const修饰指针要特别注意,共有两种形式,一种是用来限定指向空间的值不能修改;...
在C语言中,使用const修饰数组指针时,表示指针指向的地址是常量,即不能通过该指针修改其指向的内容。但是,需要注意的是,const修饰数组指针并不会影响数组本身的可变性。下面是一个示例: #include <stdio.h> int main() { int arr[] = {1, 2, 3, 4, 5}; const int (*ptr)[5] = arr; // 使用...
const作用: “只读(readonly)” 1.定义常量 (1)const 修饰变量,以下两种定义形式在本质上是一样的。它的含义是:const修饰的类型为TYPE的变量value是不可变的,readonly。 TYPE const ValueName = value; const TYPE ValueName = value; (2)将const改为外部连接,作用于扩大至全局,编译时会分配内存,并且可以不...
C语言中const还可以修饰数组,举例如下:const int array[5] = {1,2,3,4,5};array[0] = array[0]+1; //错误 数组元素与变量类似,具有只读属性,不能被更改;一旦更改,如程序将会报错。3、 修饰指针 C语言中const修饰指针要特别注意,共有两种形式,一种是用来限定指向空间的值不能修改;另一种...
C语言中的const关键字用于定义只读变量,即这些变量的值在程序运行期间不能被修改。const可以修饰变量、数组、指针和函数参数等。使用const的主要目的是防止数据被意外修改,从而提高程序的健壮性和安全性。修饰变 量:通过将变量前加上const关键字,可以创建一个只读变量。这意味着一旦该变量被初始化,其值就无法被...
2、 const可以保护被修饰的变量等,防止变量因为意外被修改,从而增强程序的健壮性。 3、 编译器通常不为普通const常量分配存储空间,而是将他们保存在符号表中,这使得它成为了一个编译期间的常量,没有了存储于内存操作,使得它的效率很高。 const用法 const最常见的用法就是作为数组的边界和switch分情况标号,分类如下:...