4 常数和常量

 欢迎来到@一夜看尽长安花 博客,您的点赞和收藏是我持续发文的动力

对于文章中出现的任何错误请大家批评指出,一定及时修改。有任何想要讨论的问题可联系我:3329759426@qq.com 。发布文章的风格因专栏而异,均自成体系,不足之处请大家指正。

    专栏:

文章概述:对常数和常量的介绍

关键词:常数和常量

本文目录

常数与常量

常数

常量

枚举类型

常数与常量

先看看最粗略的内存结构。

常数

也叫立即数,或者“字面量”,就是硬编码到程序中的那些“死”数据。

  • 字符常数 单引号:'A', 'x' 有些字符无法表示,可以直接整数,或:转义字符
 char a = 'A';
 char b = 9;
 char c = 66;

'\t' 与 9 是同等效果的 '\n' 是什么?它的 ASCII 码是多少? 可以实验确定

char a = '\n'; 
int x = a; 
cout << x << endl;
  • 整型常数 默认是 int,需要长整数需要加 LL 考考你,一年有多少秒? int a = 365LL * 24 * 60 * 60 * 1000;

十六进制表示法: 0xff, 0xBA3C

二进制与十六进制有天然对应关系:

cout << hex << x<< endl;

  • 浮点型常数 可以使用 f 或 d 尾标表示类型 可以使用科学计数法表示更大的数字 0.5e12, 3.18e-20

常量

用 const 修饰的变量,它占用数据区内存,但编译器保证你不能修改它的值。

常量必须在定义时初始化

编译器的保证只是形式上的,你可以绕开编译器,强行改变其值! 常量的用处:

  • 多个地方用到同一个常量,内存只有一份拷贝。
  • 程序中不希望修改的量,避免“笔误”
  • 程序中不希望出现魔法数字,这样不利于将来的变更

枚举类型

把一组常数符号化,比如:星期,职称等有限种类的情形

enum week{Mon, Tue, Wed, Thu, Fri, Sat, Sun} a; 实际上相当于:

enum week{Mon, Tue, Wed, Thu, Fri, Sat, Sun};
enum week a;

这实际上是同时定义了三样东西: 类型: enum week 类型中的常数符号: Wed, Sat 等 该类型的变量: a

enum 的典型错误用法:

enum week{Mon, Tue, Wed, Thu, Fri, Sat, Sun};
int a = Thu;
//a = 100;
cout << a << endl;

可以通多 typedef 来定义enum的别名,避免定义多个变量时的尴尬。


typedef enum {Mon, Tue, Wed, Thu, Fri, Sat, Sun} WEEK;
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值