文章目录
- 变量
- 标识符
- 作用域
- 常量
- 基本数据类型
- 整型
- 无符号
- 字符类型
- bool类型
- 浮点类型
- 字面值
- 赋值时自动类型转换
变量
变量的数据类型
int
数据类型 变量名;
#include<iostream>
using namespace std;int main()
{// 定义变量int a = 1, b;b = 10;cout << "a = " << a << endl; cout << "b = " << b << endl;cin.get();
}
标识符
由字母、数字和下划线组成;不能以数字开头;大小写敏感。
作用域
定义在花括号外:全局变量
定义在花括号内:局部变量
#include<iostream>
using namespace std;int number = 1; // 全局变量可以不做初始化,会自动初始化为0int main()
{// 定义变量int number = 2; //在使用前需要初始化cout << "number = " << number << endl; // 输出2,局部会覆盖全局的cout << "::number = " << ::number << endl; // 使用默认空间的变量cin.get();
}
常量
1.使用宏定义
#define ZERO 0
#deifine PI 3.14
2.const(建议使用)
//定义常量
//必须赋值
//不可更改
const float Pi = 3.14;
基本数据类型
整型
一个‘0/1’是一位(bit),计算机最小寻址是8位,一个字节(Byte)。一个字节表示的最大数是 2 8 = 256 2^8=256 28=256。
默认是有符号型。
最小尺寸
bool 未定义
char 8位
short 16位
int 16位
long 32位
long long 64位
一般win7\win10\mac os中:
- short(16位) 2 1 6 = 65536 2^16=65536 216=65536,考虑负数范围 − 2 1 5 2 1 5 − 1 ( − 32768 32767 ) -2^15~2^15-1(-32768~32767) −215 215−1(−32768 32767)
- int(32位)不能比short短,不能比long长
- long(32位)
注:超出范围会溢出
无符号
有的场景不需要负数范围,而且只表示正数和0范围就会增大一倍。
unsigned short = 32369;
字符类型
char c = 65;
cout << "c = " << c << endl; // A
cout << "c + 1 =" << (c + 1) << endl; // 66
char c2 = c + 1;
cout << "c2 = " << c2 << endl; // Bcin.get();
char c = 'A';
bool类型
bool bl = true;
cout << "bl = " << bl << endl; // 1
cin.get();
浮点类型
float\double
科学计数法: 3.17 e − 13 = 3.17 ∗ 1 0 − 13 3.17e-13=3.17*10^{-13} 3.17e−13=3.17∗10−13
float f = 3.14;
double pi = 5.2e-3;
字面值
整形字面值:默认是int类型,
30 //10进制
036 //8进制,0开头
0x //16进制,0x开头
明确告诉计算机字面值类型:
30;
036L; //L:long类型
0x1ELL; //LL:long long类型
浮点型
3.14f; //float类型
2.56; //double类型
5.23l; //long double类型
字符和字符串
'A';
"Hello World!";
//转义字符
'\n';
'\t';
'\?';
'\'';
赋值时自动类型转换
bool btrans = 25;
cout << "btrans = " << btrans << endl; //1short strans = false;
cout << "strans = " << strans << endl; //0int itrans = 3.95;
cout << "itrans = " << itrans << endl; //3float ftrans = 3;
cout << "ftarns = " << ftrans << endl;