C++变量和常量

变量和常量是用来在程序中表示数据的。常量是指取值在程序的执行过程中始终保持不变的量,又分为文字常量(Literal constant)和常变量(也称“符号常量”)。

本节将分三小节来介绍。

变 量

◆  变量:在程序中是指可以改变值的量。

◆  变量名:用于标识变量的标识符。而且变量必须用标识符进行标识。

◆  变量的类型:变量有类型之分,如整形变量、字符变量等。

◆  变量的说明:任何变量都必须先说明后使用。

目的:一是便于编译程序为变量分配空间,二是便于编译时进行语法检查。

格式:在C++中,变量说明的一般格式为:
    [存储类型]<数据类型> <变量名1>[,<变量名2>,…,<变量名n>]

举例,下面是变量说明的几个例子:
    int i, j, k;    //说明3个整型变量i,j,k
    float x,y,z;    //说明3个实型变量x,y,z
    char c1, c2;    //说明2个字符型变量c1,c2
    double dx;        //说明1个双精度型变量dx

◆  变量的使用:变量使用的第一步,是给变量赋初始值,称为“初始化”。有两种方法:

  • 变量说明时直接赋初值:
        int a=3, b=4, c=5;
        float x=3.0;
  • 用赋值语句赋初值:
        float x, e;
        x=3.5;
        e=2.71828;

文字常量

文字常量指程序中直接给出的量。文字常量存储在程序区,而不是数据区;对它的访问不是通过数据地址进行的。

根据取值和表示方法的不同,可分为整型常量、实型常量、字符型常量和字符串常量

◆  整型常量:即整数,可以有多种表示方法。

  • 十进制表示法:是平时的习惯写法,例如:15 -24;
  • 八进制表示法:以0打头,由数字0~7组成。例如:
        012      //八进制数12,即十进制数10
        -6555    //八进制数-655,即十进制数-429
  • 十六进制表示法:以0X(大小写均可)打头,由数字0~9和字母A~F(大小写均可)组成,用来表示一个十六进制数。例如:
        0x32A    //十六进制数32A,即十进制数810
        -0x2fe0   //十六进制数-2fe0,即十进制数-12256
  • 其他表示法:还可以表示以 L或l结尾的长整数和以U或u结尾的无符号整数。以UL或LU(大小写均可)结尾则可表示无符号长整型常数。例如:
        -84L        //十进制长整数-84
        026U       //八进制表示的无符号数26
        0X32LU     //十六进制表示的无符号长整数32

◆  实型常量:包含小数点和10的幂的数,有两种表示方法:

  • 一般形式:与平时书写形式相同,由数字0 ~9和小数点组成。例如:
        0.23、 -125.76、 0.0、 .46、 -35.
  • 指数形式:即科学表示法,表示为尾数乘以10的次方形式,由尾数、E或e和阶数组成。要求在E或e前面的尾数部分必须有数字,后面的指数部分必须为整数。

    判断下列实型常量表示是否合法:(答案:红色的不合法)
    123E12 、 E41.43E3.5 、 -.34e-2 ;

◆  字符型常量:用单引号引起来的单个字符。

  • 保存形式:在内存中保存的是字符的ASCII码值。
  • 直接表示形式:对于可显示字符,通常用单引号直接引起来表示。例如:
        'a'   //字符a            '4'   //字符4               '@'   //字符@               ' '   //空格字符
  • 转义序列表示法:对于不可显示的或无法从键盘输入的字符,如回车符、换行符、制表符、响铃、退格等;另外,还有几个具有特殊含义的字符,如反斜杠、单引号和双引号等,C++提供了一种称为“转义序列”的表示方法。例如:
    '/a'   //响铃             '/n'   //换行符                 '//'   //字符/   

下表给出C++中预定义的转义序列字符及其含义。

字符表示
ASCII码值
名 称
功 能 或 用 途
/a0x07
响铃
用于输出
/b0x08
退格(Backspace键)
退回一个字符
/f0x0c
换页
用于输出
/n0x0a
换行符
用于输出
/r0x0d
回车符
用于输出
/t0x09
水平制表符(Tab键)
用于输出
/v0x0b
纵向制表符
用于制表
/00x00
空字符
用于字符串结束标志等
//0x5c
反斜杠字符
用于需要反斜杠字符的地方
/′0x27
单引号字符
用于需要单引号的地方
/″0x22
双引号字符
用于需要双引号的地方
/nnn八进制表示 用八进制ASCII码表示字符
/xnn十六进制表示 用十六进制ASCII码表示字符

说明:

  • 上表中最后两行是所有字符的通用表示方法,即用反斜杠加ASCII码表示。
  • 对于可显示字符,有三种表示方法。以字母a为例: ′a′、′/141′和′/x61′
  • 显然,对于可见字符,第一种是最简单直观的表示方法。

◆  字符串常量:由一对双引号″″引起来的若干个字符组成。例如:″I am a Chinese.″、 ″123″、 ″a″、 ″ ″

字符串常量与字符型常量的区别如下:

  • 字符串常量″a″占两个字节,存放'a'和'/0',如图左半部分,值为0x6100;
  • 字符型常量'a' 占一个字节,存放'a',如图右半部分,值为0x61。

常变量

用常量说明符const给文字常量命名所得的标识符就称为“标识符常量”。因为标识符常量的说明和引用形式很像变量,所以也称“常变量”。例如:
    const float PI=3.14159;    //定义了常变量PI
    const int Number_of_Student=100; //定义了常变量Number_of_Student

在使用常变量时应注意以下几点:

  • 常变量必须也只能在说明时进行初始化。
  • 常变量初始化之后,不允许再被赋值。
  • 常变量必须先说明后使用。
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值