【轻松学C:编程小白的大冒险】--- 07 常量的定义、声明与应用场景
创作时间:
作者:
@小白创作中心
【轻松学C:编程小白的大冒险】--- 07 常量的定义、声明与应用场景
引用
CSDN
1.
https://blog.csdn.net/weixin_44205779/article/details/146100783
在编程的艺术世界里,代码和灵感需要寻找到最佳的交融点,才能打造出令人为之惊叹的作品。而在这座秋知叶i博客的殿堂里,我们将共同追寻这种完美结合,为未来的世界留下属于我们的独特印记。
【轻松学C:编程小白的大冒险】--- 07 常量的定义、声明与应用场景
今日冒险目标:驯服常量大魔王
欢迎回到C语言魔法学校!今天我们要收服编程世界里最固执的伙伴——常量。它像被封印的魔法水晶,一旦设定就永远不变!准备好学习如何用常量打造坚不可摧的代码了吗?
一、常量:被封印的魔法水晶
想象你有一个黄金宝箱:
- 一旦放入钻石,就永远无法取出或更换(
const常量) - 用魔法契约提前规定好内容(
#define宏常量) - 只能读取,不能修改(永恒不变的规则)
定义常量:
const int MAX_SCORE = 100; // 用const封印的整数常量
#define PI 3.1415926535 // 用#define契约规定的浮点数
二、封印魔法:常量的内存秘密
当你写下const int a = 5;时,编译器会:
- 在内存中分配4字节空间(同int变量)
- 贴上"只读"封条(禁止修改)
- 存进去数字5
内存示意图:
内存地址 | 内容 | 标签 | 权限
0x2000 | 05 | MAX_SCORE | 只读
0x2004 | 0A | age(变量) | 读写
冷知识:
const常量在编译时检查修改行为(会报错)#define宏在预处理阶段直接替换(无类型检查)
三、常量的魔法应用
1. 数学公式
#define GRAVITY 9.8 // 重力加速度
float distance = 0.5 * GRAVITY * time * time;
2. 安全防线
const int LOGIN_ATTEMPTS = 3; // 最大登录次数
for (int i = 0; i < LOGIN_ATTEMPTS; i++) {
// 登录逻辑
}
3. 配置文件
#define SERVER_URL "http://api.example.com"
// 网络请求使用固定URL
四、封印方式大比拼
类型 | 语法 | 作用时机 | 特性 |
|---|---|---|---|
const | const int a = 5; | 编译阶段 | 有类型检查,内存中有存储 |
#define | #define A 5 | 预处理阶段 | 无类型检查,直接文本替换 |
🌰 举个栗子:
const float PI = 3.14f; // 正确,类型匹配
#define PI 3.14f // 正确,但可能被重新定义
五、常量的生存法则
1. 生命周期
- 与变量相同:全局常量程序启动时存在,局部常量函数运行时存在
2. 作用域
const常量:与变量作用域一致(文件、函数、代码块)#define宏:从定义处到文件结束(可用#undef提前解除)
六、小课堂
专业术语:
常量表达式:编译时能计算出结果的表达式(如
1+2)类型安全:
const比#define更安全,防止类型不匹配错误编程冷笑话:
Q:为什么#define宏不能当const用?
A:因为它是个"文字游戏玩家",而const是"内存管家"。
七、今日金句
变量像河流可以流动,常量像山脉永远矗立,两者结合才能写出刚柔并济的代码!
热门推荐
《神将三国》徐晃队最强攻略:阵容搭配、技能选择与实战技巧详解
IC技术支持的重要性与方法论
赘婿文的微型爽点设置秘籍
沈阳自动化所成果入选“2024中国智能制造十大科技进展”
青光眼患者必看:视神经筛板的秘密
2024年单独招生职业适应性测试模拟题:助你一臂之力!
《聊斋志异》中的女性复仇传奇:从血亲到侠义
炎症相关药物的研发与应用现状
北京绿色生态空间大揭秘:从规划到实践
李靖:真正的战士,不只是冲锋陷阵
App权限陷阱关乎每个人,谨防隐私泄露造成生命财产安全损失
教育部发布重要通知!长安大学春季开学防疫政策有新变化
UFC打造综合体能大赛,让普通人也能感受综合格斗的魅力
高情商表达的艺术:幽默让你更受欢迎!
Excel表格中的累计百分比怎么算
BBC推荐:快速入睡的心理调节法
从理想到现实:《Fate/Zero》中卫宫切嗣的黑化之路
什么是项目计划?项目计划如何制定?
Chrome浏览器调试Vue应用的完整指南
抽动症对孩子生活有哪些影响?
山东泰山青训表现亮眼,助中国U20国青赢得开门红
拖拉机为什么要用柴油发动机?
更精确的时间同步方案:PTP技术详解
轻松去除袜子异味:科学原理与实用方法
案例警示丨预防触电,请与危险绝缘
肖战微博再掀热议:粉丝互动新花样
《机动战士高达:一年战争》上线:经典重现,创新演绎
Valve AI加持:CS2反作弊黑科技大揭秘!
《小小的我》:苦难叙事中的精神超越
一个月掌握PREP法则,职场沟通不再难!