详解C++中的常量

2020-07-03 12:00:34刘景俊

字符常量可以是一个普通的字符(例如 'x')、一个转义序列(例如 't'),或一个通用的字符(例如 'u02C0')。

在 C++ 中,有一些特定的字符,当它们前面有反斜杠时,它们就具有特殊的含义,被用来表示如换行符(n)或制表符(t)等。下表列出了一些这样的转义序列码:

转义序列 含义
字符
' ' 字符
" " 字符
? ? 字符
a 警报铃声
b 退格键
f 换页符
n 换行符
r 回车
t 水平制表符
v 垂直制表符
ooo 一到三位的八进制数
xhh . . . 一个或多个数字的十六进制数

下面的实例显示了一些转义序列字符:

#include <iostream>
using namespace std;
 
int main()
{
  cout << "HellotWorldnn";
  return 0;
}

当上面的代码被编译和执行时,它会产生下列结果:

Hello   World

字符串常量

字符串字面值或常量是括在双引号 "" 中的。一个字符串包含类似于字符常量的字符:普通的字符、转义序列和通用的字符。

您可以使用空格做分隔符,把一个很长的字符串常量进行分行。

下面的实例显示了一些字符串常量。下面这三种形式所显示的字符串是相同的。

"hello, dear"

"hello,

dear"

"hello, " "d" "ear"

定义常量

在 C++ 中,有两种简单的定义常量的方式:

使用 #define 预处理器。 使用 const 关键字。

#define 预处理器

下面是使用 #define 预处理器定义常量的形式:

#define identifier value

具体请看下面的实例:

#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

const 关键字

您可以使用 const 前缀声明指定类型的常量,如下所示:

const type variable = value;