1基础知识:变量及标识符
- 变量及标识符
- 变量:程序运行时其值可以改变的量,且在使用之前一定要先声明
- 声明的一般格式:[修饰符]+类型+标识符
- 多个同类型的变量可以在一行中声明,不同变量用逗号隔开
- 分类:整型变量、实型变量、字符变量
- 标识符:用来对C++程序中的常量、变量以及用户自定义函数的名称进行标号的符号
- 标识符命名规则
- 在名称中只能使用字母、数字、下划线:其中三个 或两个或一个均可 只有单独数字不可以
- 名称的第一个字符不能是数字
- 区分大写字符与小写字符
- 不能将C++关键字用作名称
-
#include<iostream> using namespace std; int main() { int i; //声明变量:基本整型+变量名 整型变量只能放整型常量 有符号无符号均可 unsigned int j;// unsigned无符号修饰符 只能放无符号常量 因此只能放正数 不能放负数 i=-1; j=2; //-2 系统不会出错 会出现一组非常大的随机数 cout<<i<<endl; cout<<j<<endl;
return 0;
} -
整型变量:短整型(short)、基本整型(int)、长整型(long)
-
所占内存:
- 对于16位系统 所占用内存单元(2 2 4)
-
对于32位系统 所占用内存单元(2 4 4)
- 对于64位系统 所占用内存单元(2 4 4)
-
#include<iostream> using namespace std; int main() { cout<<sizeof(short)<<endl; // sizeof 变量占用内存单元 输出2 cout<<sizeof(int)<<endl; // 输出4 cout<<sizeof(long)<<endl;// 输出4 return 0; }
-
取值范围:
-
short 占用2个字节 一个字节8个位,以最高位进行正负之分,0为正,1为负
- 取值范围为:1000000000000000~0111111111111111=-32768~32767
- 0111111111111111+1-1=10000000000000000-1=1*2^15-1 =32767
- 1000000000000000=-2^15=-32768
-
-
unsigned short的取值范围 0000000000000000~1111111111111111=0~65535
- 1111111111111111+1-1=10000000000000000-1=2^16-1*2^0= 65535
-
-
实型变量:又称为浮点型变量 单精度(float)提供7位有效数字;双精度(double)提供15位有效数字
- 浮点数由三部分组成:
- float:所占内存为4个字节,32位
- 符号位S:1位 决定正负数
- 指数部分E(阶码):8位
- 尾数部分M:23位
- double:所占内存为8个字节,64位
- 符号位S:1位
- 指数部分E(阶码):11位
- 尾数部分M:52位
- float:所占内存为4个字节,32位
- 浮点数精度取决于尾数部分,尾数部分的位数越多,能够表示的有效数字越多
- float:23位存储,加上默认的符号位的1位,2^(23+1)=16777216 10^7<16777216<10^8 所以说float的有效位数是7位。
- double:52+1 2^(52+1)=9007199254740992 10^15<9007199254740992<10^16 double的有效位数为15
-
取值范围 :
-
float: -3.4e38~3.4e38
-
double:-1.7e308~1.7e308
-
#include<iostream> using namespace std; int main() { float a; a=3.4e38;//3.4e39 超出范围 输出inf cout<<a<<endl; double b; b=1.7e308;//1.7e3.9 inf cout<<b<<endl; return 0; }
-
- 浮点数由三部分组成:
-
char 字符变量
-
#include<iostream> using namespace std; int main() { char ch1;//被类型说明符(char) 声明的变量 开辟的内存单元为 一个字节的内存单元 (8个位) ch1='a';//字符常量 每个字符对应一个 ASCII码 97(无符号整型常量) return 0; }
-

浙公网安备 33010602011771号