当const 在函数名前面的时候修饰的是函数返回值;在函数名后面表示是 C++常成员函数,该函数不能修改对象内的任何成员,只能发生读操作,不能发生写操作。 const char * GetString(void); const int GetInt(void); const float GetFloat(void); const double GetDdouble(void); 如果给以“指针传递”方式的函数返回...
如果输入参数采用“值传递”,由于函数将自动产生临时变量用于复制该参数,该输入参数本来就无需保护,所以不要加 const 修饰。例如不要将函数 void Func1(int x) 写成 void Func1(const int x)。如果参数作为输出参数,不论它是什么数据类型,也不论它采用“指针传递”还是“引用传递”,都不能加 const 修饰,否则...
非指针参数(也就是传值参数)不会被修改原始值, const 对它是没有意义的. const 只用于指针. 1. 第一种用法: const 类型 *变量: 这种用法将限制修改指针指向的值. #include <stdio.h> int fun(const int *p) { *p += 1; /* 只有去掉 const 这句才可以执行 */ return *p; } int main(void) {...
1. 声明常量 const int MAX_SIZE = 100;在这个例子中,MAX_SIZE 被声明为一个常量,其值不能被修改。2. 函数参数中的 const void print(const char *str);在这个例子中,const 用于指示函数 print 的参数 str 是只读的,函数内部不能修改 str 所指向的内容。3. 指针常量和常量指针 const int *ptr1;int...
const 成员函数不可以修改对象的数据,不管对象是否具有 const 性质.它在编译时,以是否修改成员数据为依据,进行检查; 然而加上 mutable 修饰符的数据成员,对于任何情况下通过任何手段都可修改,自然此时的 const 成员函数是可以修改它的; 二.const 修饰函数参数 ...
在这个例子中,print_array函数接受一个指向const int的指针作为参数,这意味着这个函数不会修改传入的数组。5.在结构体和联合中使用const:const也可以用于结构体和联合的成员,以保护这些成员不被修改。总的来说,const关键字在C语言中提供了一种机制来声明只读变量和指针,从而提高了代码的可读性、可维护性和安全...
非指针参数(也就是传值参数)不会被修改原始值, const 对它是没有意义的. const 只用于指针. 1. 第一种用法: const 类型 *变量: 这种用法将限制修改指针指向的值. #include<stdio.h>intfun(constint*p){*p+=1;/* 只有去掉 const 这句才可以执行 */return*p;}intmain(void){intnum=3;printf("%d\n...
在C语言中,const是一个关键字,用于声明常量。const关键字可以应用于变量、函数参数和函数返回值,用于指定它们的值不能被修改。1. const修饰变量:- 通过在变量声明前加上const关键字,可以将该变量声明为常量,其值在初始化后不能被修改。- 常量的值必须在声明时进行初始化,并且不能再被修改。任何试图修改常量...
const int * const p 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 详细解释可以直接跳转:const修饰指针; 3.const 修饰在函数名前面 当const 在函数名前面的时候修饰的是函数返回值;在函数名后面表示是 C++ 常成员函数,该函数不能修改对象内的任何成员,只能...
const int* const num; 这个代表num所指向的对象的值以及它的地址本身都不能被改变 修饰函数的形参 根据常量指针与指针常量,const修饰函数的参数也是分为三种情况 防止修改指针指向的内容 void FUN(char *destin, const char *source); 其中source 是输入参数,destin 是输出参数。给 source 加上 const 修饰后...