【轻松学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是"内存管家"。
七、今日金句
变量像河流可以流动,常量像山脉永远矗立,两者结合才能写出刚柔并济的代码!
热门推荐
怎么吃姜:姜的营养价值、健康益处及食用方法介绍?
三国时期的曹丕四友指的是哪些人?吴质是什么样的人?
皮肤科医师专业解析:4种不同类型的痘痘成因与治疗方法
饿了吸食胶水,渴了就喝航天燃油,为何非洲贫民窟的孩子如此上瘾
黄芪,古老而神奇的中草药
理财不保本的影响因素有哪些?如何应对理财不保本的情况?
Dubbo(从入门到掌握)看完这一篇就够了
古城如何“活”起来——来自新疆喀什的调查
软水机和净水器的区别:净水器\软水机的原理和作用
小腿肌肉怎么减下去
科技分享:如何科学烤机/验机?CPU/显卡/内存/电源高压测试
瓜蒌薤白白酒汤,不可不知的“速效救心丸”
瓜蒌的功效与作用
网络诈骗犯罪的行为特征及量刑标准详解
珠海:推动群众体育蓬勃发展,助力“百千万工程”建设
酒店的排房分房技巧
企业人力资源管理师的晋升路径是怎样的?
债券股票如何实现资产配置?这种配置方式有哪些注意事项?
如何高效制定周进度计划表?一看就会的实用技巧
保险基础知识第五章:保险产品与保障体系详解
三国时期徐庶为何会选择归顺曹操
房间有霉味怎么去除
肺炎支原体感染的特点及临床表现
智能手机使用必知知识全解析:新手必备指南
甲亢病人导致脉压增大的原因是什么引起的
别用酒精擦!处理猫黑下巴的3要3不要
死神BLEACH:黑崎一护的斩魄刀十次变化,其中一次成了双刀
阴阳师黑崎一护培养他吗?御魂搭配让你秒变大佬!
VAC无法验证游戏会话?六步帮你轻松解决Steam游戏验证问题
如何做诚实守信的人?成为一个诚实守信的人:简单步骤,高效践行!