一、整数常量
可以是十进制【不带前缀】、八进制【0】或十六进制【0x 或 0X】的常量
整数常量也可以带一个后缀,后缀是 U 和 L 的组合,U 表示无符号整数(unsigned),L 表示长整数(long)。后缀可以是大写,也可以是小写,U 和 L 的顺序任意。
212 // 合法的 215u // 合法的 0xFeeL // 合法的 078 // 非法的:8 不是八进制的数字 032UU // 非法的:不能重复后缀 85 // 十进制 0213 // 八进制 0x4b // 十六进制 30 // 整数 30u // 无符号整数 30l // 长整数 30ul // 无符号长整数
二、浮点常量
浮点常量由整数部分、小数点、小数部分和指数部分组成。您可以使用小数形式或者指数形式来表示浮点常量。
3.14159 // 合法的 314159E-5L // 合法的 510E // 非法的:不完整的指数 210f // 非法的:没有小数或指数 .e55 // 非法的:缺少整数或分数
三、布尔常量
不应把 true 的值看成 1,把 false 的值看成 0
四、字符常量
五、字符串常量
括在双引号 " " 中
包含:普通的字符、转义序列和通用的字符
六、定义常量
(1)#define 预处理器
#include <iostream> using namespace std; #define LENGTH 10 #define WIDTH 5 #define NEWLINE ‘\n‘ int main() { int area; area = LENGTH * WIDTH; cout << area; cout << NEWLINE; return 0; }
输出:50
(2)const 关键字
#include <iostream> using namespace std; int main() { const int LENGTH = 10; const int WIDTH = 5; const char NEWLINE = ‘\n‘;
int area; area = LENGTH * WIDTH; cout << area; cout << NEWLINE; return 0; }
结果:50
把常量定义为 大写字母 形式,是一个很好的编程实践
补充:
1.定义成 const 后的常量,程序对其中只能读不能修改
所以在定义时必须赋初始值,要不然是错误的,除非这个变量是用extern修饰的外部变量
const int A=10; //正确。 const int A; //错误,没有赋初始值。 extern const int A; //正确,使用extern的外部变量。
2.
定义: #define N 21 取消: #undef N 12
4.
const关键字应用
5.
更多查看:const char*, char const*, char*const 的区别
7.预处理 #define 后不能加分号,程序不会报错,但 计算会出错
原文:https://www.cnblogs.com/expedition/p/11313711.html