千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  千锋问问  > c/c++中const的区别

c/c++中const的区别

匿名提问者 2023-03-28 17:19:59

c/c++中const的区别

我要提问

推荐答案

c/c++中const的区别

  在C/C++中,const是一个关键字,用于指定一个变量或函数参数的值不能被修改。const有两种常见用法:const修饰符和const指针。

  const修饰符

  const修饰符用于声明一个常量变量,即该变量的值在声明后不能被修改。例如:

  const int x = 10;

  在这个例子中,变量x被声明为一个整型常量,其值为10,不能再被修改。

  const指针

  const指针指的是指针指向的值不能被修改,而不是指针本身不能被修改。例如:

  const int* ptr;

  在这个例子中,指针ptr被声明为一个指向整型常量的指针,可以改变指针本身的值,但不能改变指针所指向的值。

  另一种常见的情况是使用const修饰函数参数,以防止在函数内部修改参数的值。例如:

  void foo(const int x);

  在这个例子中,参数x被声明为一个整型常量,不能在函数内部修改它的值。

  总的来说,const关键字用于指定变量或函数参数的值不能被修改,可以应用于变量、指针以及函数参数。需要根据具体的情况选择合适的使用方法。

其他答案

  •   在c语言中,用const定义一个常量的时候,编译器会直接开辟一个内存空间存放该常量,不会进行优化。 并且当我们用一个指针去指向该变量的时候我们是可以对该变量进行修改的。

  •   c++中用const定义了一个常量后,不会分配一个空间给它,而是以key-value(键值对)的形式写入符号表(symbol table),这使得它成为一个编译期间的常量,没有了存储与读内存的操作,使得它的效率也很高。