C++语言程序设计

下面给出一个有常量定义的实例程序，这个程序是打印给定半径的圆的面积和周长。

| 例2-6：

void main()
{
const double PI = 3.1415926535898; //定义圆周率常量PI
double radius; //定义圆半径变量
double area; //定义圆面积变量
double circumference; //定义圆周长变量
cout << "Enter radius : ";
cin >> radius;
area = PI*radius*radius;
circumference = 2.0*PI*radius;
cout << "Area of circle of radius " << radius << " is "
<< area << " \n";
cout << "and its circumference is " << circumference
<< " \n";
}
运行该程序，并输入半径值10.0：
Enter radius : 10.0↙
则输出结果为：
Area of circle of radius 10.0 is 314.159
and its circumference is 62.8319

常量就是在程序运行过程中其值不发生变化的量。常量可分为直接常量与符号常量。直接常量就是平常我们所说的常数，例如：
`r` // r为字符型直接常量
3.1415926 // 3.1415926为双精度直接常量
符号常量就是用一个标识符代表某个常量。符号常量可用关键字const声明，其格式如下：
const 数据类型　常量名＝常数值；
例如：
const int a= 1234; //定义a为整型常量其值为1234
const char b=`a` //定义b 为字符型常量其值为a
在程序设计中，尽量使用符号常量来代替常数，这是一种好的编程习惯，这样可以增加程序的可读性、可维护性。例如，在数值计算中，我们会经常遇到一些常量，比如圆周率。如果把它定义成符号常量，当需要更改常量值的时候，只需要更改符号常量的定义语句即可。
也可以使用预处理语句定义符号常量，例如我们用：
#define PI 3.14159
定义符号常量PI，然后在程序中使用PI，跟使用常数3.14159的效果是一样的。编译器在编译时，把符号PI替换成3.14159，当需要修改PI的值时，只需要修改上面的语句即可。但是我们不推荐这样做：因为预定义符号与符号常量不同，在编译时使用常数替代了所有的预定义符号，这样在代码中相应位置实际都是常数。程序中过多的常数会导致程序代码量变大，而且在多个源文件中定义了同样的符号，会产生符号重定义的问题。使用常量优于＃define宏，优点在于可指定类型信息。

| 例2-7：
| const double PI = 3.1415927; //圆周率π const long number = 49L; const char TAB = '\t'; const char QUERY = '?'; const double SOMENUM = 1.235E75;