C++内置的基本类型:整型

基本类型大致分为整型(字符型本质上也是整型)和浮点型,在讨论它们之前,先来看看变量命名规则吧。

变量命名

  1. 变量名由字母,数字和下划线(_)组成
  2. 不能用数字来开头
  3. 区分大小写
  4. 不能使用关键字命名,尽量避免使用保留字(后果是不确定的)

位与字节

位(bit):计算机内存的基本单位。

        一个位上可以存储0 或 1,这就是二进制,那么4位的内存单元可以表示多少数字呢?2的4次方个,即16个数字,位越多表示的范围就越大。

字节(byte):通常指的是8位的内存单元。

整型

有char    short(短整型)  int(整型)  long(长整型 ) long long(长长整型)这五种,short是short int 的简称,long int, long long int。

根据C++的标准,char至少16byte

                            int至少等于short

                            long至少32byte,且大于等于int

                            long long至少 64byte,且大于等于long

具体取决于实现,下面是两种查看的方法

  1. sizeof运算符会返回数据类型或着变量所占内存大小,单位是字节,我们可以借此来看一下各类型所占大小:
#include <iostream>

int main()
{
	using namespace std;

	char a1;
	short a2;
	int a3;
	long a4;
	long long a5;

    //注意sizeof(类型)或sizeof(该类型的变量名)都可以的
	cout << sizeof(a1) << endl;
	cout << sizeof(a2) << endl;
	cout << sizeof(int) << endl;
	cout << sizeof(long) << endl;
	cout << sizeof(a5) << endl;
	
	return 0;
}

如果对类型(如int)使用sizeof则需要带上括号,如果对变量,则可有可无,建议都带上。        

运行结果(结果可能不同):

        2.还可以通过头文件climits

       它包含关于整型限制的信息。

初始化

  1. int a = 10;
  2. int a(10);
  3. int a = { 10 };
  4. int a{ 10 };

以上四种都是将变量a初始化为10,如果在3,4的初始化列表中什么都不写,a将被初始化为0。

C++11标准使得可将大括号初始化器用于任何类型(可以省略等号)。

有(无)符号类型

char    short    int    long    long long默认是有符号的类型,也就是说可以表示负数,当然也可以显示的声明(如 signed int)。

无符号类型,需要加上unsigned关键字,如unsigned long,只能表示非负数。

注意 unsigned本身 是 unsigned int 的缩写。

在只表示0 和 正整数的情况下,无符号的能表示的最大值就要比有符号的大。

整型选择

一般int就行。

自然长度:指计算机处理起来效率最高的长度。

通常,int 被设置为计算机自然长度,因此一般int就行。

整型字面量(常量)

字面量就是直接写出来的整数(如12),有四种不同的计数方式来书写整型:

  1. 十进制:10,16....
  2. 十六进制:0x或0X开头,0-9和a-f(或A-F)来表示,如0x15F
  3. 八进制:0开头,0-7来表示,如0167
  4. 二进制:0b开头,0-1来表示,如0101110

不管以哪种方式书写,最终存储在计算机中的都是二进制数

C++如何确定常量的类型

首先看后缀,后缀用来表示存储类型,大小写都可,如5L,就存储为long类型。

后缀表示:

unsigned int:U

long :L

long long:LL

unsigned long :UL / LU(哪种顺序都可以)...

如果没有后缀,C++将整型常量存储为int类型,如果数字超过int类型所能表示的看,会存储为稍微大点的能表示该常量的类型中。

char类型:字符和小整数

编程语言通过使用字符的数值编码来间接存储字符,所以说char类型是一种整型。

char类型占1字节,也就是能表示128个字符。

在ASCII字符集中,字符A的编码为65。

C++对字符使用单引号,字符串使用双引号

初始化

  1. char ch = 65;
  2. char ch = 'A';  推荐这种,清晰且可移植性强

signed char 和 unsigned char

char在默认情况下为哪种取决于实现,一般表示字符这两种类型的范围都能容纳,如果要表示负整数,可以显示表示signed char

补充:const修饰的变量称为常量,如const int A = 10;必须在声明是初始化,且之后不能修改。

一般变量名大写。

感谢您花时间阅读我的文章,有任何想法,欢迎留言,咱们一起探讨!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值