- C++变量命名规则
- C++内置的整型
- C++11新增的整型
- climits文件
- 整型的数字字面值
- const限定符
- C++内置的浮点型
- cfloat文件
- 浮点类型的数字字面值
- C++的算术运算符
- 类型转换
内置的C++类型分两组:基本类型和复合类型。本篇介绍基本类型——整数和浮点数。
简单变量
为了把信息存储在计算机中,程序必须记录3个基本属性:
- 信息将存储在哪里
- 要存储什么值
- 存储什么类型的信息
变量名
C++命名规则:
- 名称中只能使用字母字符、数字和下划线
_
- 名称的第一个字符不能是数字
- 区分大小写字符
- 不能采用关键字
- 以两个下划线
__
、下划线和大写字母_X
大头的名称被保留给实现(编译器及其使用资源)使用。以一个下划线_
开头的名称被保留给实现,用作全局标识符。 - 长度没有限制
整型
没有小数部分的数字。语言只能表示所有整数的一个子集。
不同的C++整型使用不同的内存量存储整数。宽度(width)描述存储整数时使用的内存量。
C++基本类型(宽度递增排列)分别是char
, short
, int
, long
和C++11新增的long long
。每种类型都有符号版本和无符号版本。
整型short, int, long 和long long
short
至少16位int
至少与short
一样长long
至少32位,且至少与int
一样长。long long
至少64位,且至少与long
一样长
字节(byte)通常是指8位的内存单元。C++字节由至少能够容纳实现的基本字符集的相邻位组成。
sizeof
运算符返回类型或变量的长度,单位为字节。
头文件climits
包含了关于整型限制的信息,定义了表示各种限制的符号名称,如INT_MAX
, CHAR_BIT
。
// some integer limits
#include <iostream>
#include <climits>
int main()
{
using namespace std;
int n_int = INT_MAX;
short n_short = SHRT_MAX;
long n_long = LONG_MAX;
long long n_llong = LLONG_MAX;
// sizeof operator
cout << "int is" << sizeof(int) << " bytes." << endl;
cout << "short is" << sizeof n_short << " bytes." << endl;
}
如果不对函数内部定义的变量进行初始化,该变量的值将是不确定的。
初始化方式:
- 将赋值与声明合并在一起
- 大括号初始化器
int emus{
7}; // set emus to 5
int rheas = {
12}; // set rheas to 12
int rocs = {
}; // set rocs to 0
无符号类型
优点是可以增大变量能够存储的最大值。要创建无符号版本的基本整型,只需要使用关键字unsigned
来修改声明。