[PIC®/AVR®/dsPIC®产品] const修饰变量与修饰函数的区别

[复制链接]
1964|47
598330983 发表于 2026-1-12 18:19 | 显示全部楼层
当const用于修饰变量时,表示该变量的值不能被修改,即该变量是一个常量。
旧巷情人 发表于 2026-1-21 15:51 | 显示全部楼层
const修饰变量时,限定变量值不可被修改(只读),需初始化,编译器会拦截赋值操作;修饰函数分两种:修饰返回值表示返回值不可修改,修饰参数(如const int a)表示函数内不可修改该参数,const无法直接修饰函数本身,仅能约束参数 / 返回值,核心是前者限定数据,后者约束函数交互的读写权限。

总结
  • const修饰变量:限定变量只读,不可赋值修改;
  • const修饰函数:仅约束参数 / 返回值的读写,无函数本身修饰

xixi2017 发表于 2026-1-19 15:59 | 显示全部楼层
当const用于修饰变量时,表示该变量的值不能被修改,即该变量是一个常量。
21mengnan 发表于 2026-1-20 19:26 | 显示全部楼层
当const用于修饰函数参数时,表示该参数在函数内部不能被修改。
huangcunxiake 发表于 2026-1-21 17:39 | 显示全部楼层
const 修饰变量的核心作用是将变量变为只读状态
zhuotuzi 发表于 2026-2-1 18:37 | 显示全部楼层
const 修饰变量的本质是将变量变为只读常量,编译器会阻止对其进行修改操作,目的是保护数据不被意外篡改。
mintspring 发表于 2026-2-2 19:14 | 显示全部楼层
const 修饰变量的本质是将变量变为只读常量,编译器会限制对该变量的直接修改,从而提高代码的安全性和可读性。
vivilyly 发表于 2026-2-3 19:47 | 显示全部楼层
被 const 修饰的变量在初始化后不可直接修改其值
maudlu 发表于 2026-2-4 19:50 | 显示全部楼层
C 语言中const不能直接修饰函数名,仅能修饰函数的参数和返回值;C++ 中扩展了修饰类的成员函数,核心是 “编译期约束函数的使用方式”。
sdlls 发表于 2026-2-5 13:57 | 显示全部楼层
const 修函数(C++),对象状态不变。
eefas 发表于 2026-2-5 18:57 | 显示全部楼层
该变量的值一旦初始化,就不能再被修改
zhuomuniao110 发表于 2026-2-6 09:59 | 显示全部楼层
const 修饰变量的核心作用是将变量声明为只读,一旦初始化后就不允许被修改,本质是保护数据不被意外篡改。
geraldbetty 发表于 2026-2-6 13:19 | 显示全部楼层
全局/静态 const 变量通常放在 Flash/ROM;局部 const 在栈上
cashrwood 发表于 2026-2-6 15:13 | 显示全部楼层
C 语言没有“函数被 const 修饰”的概念
pl202 发表于 2026-2-7 10:20 | 显示全部楼层
局部 const 变量在栈上,仍可被指针篡改
bestwell 发表于 2026-2-7 15:58 | 显示全部楼层
通过编译期约束减少程序错误。              
everyrobin 发表于 2026-2-7 22:07 | 显示全部楼层
任何试图修改 const 变量的代码都会报错
jackcat 发表于 2026-2-8 12:09 | 显示全部楼层
在 C 语言中,const 变量需占用内存空间,且必须显式初始化
qiufengsd 发表于 2026-2-8 15:22 | 显示全部楼层
const 修饰函数主要有两种情况:修饰参数和修饰成员函数
olivem55arlowe 发表于 2026-2-8 17:27 | 显示全部楼层
防止误修改 编译器会检查所有对该变量的赋值操作
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部
0