C++数据类型

一,基本数据类型

C++提供了多种数据类型,当需要存储数据时,用其创建变量,系统会自动为其分配空间。以下列出七种数据类型。

基本数据类型
数据类型 关键字字节数取值范围
整形int4字节 -2147483648~2147483647
浮点型float4字节

+/- 3.4e +/- 38

双浮点型 double8字节+/- 1.7e +/- 308 
字符型char1字节-128 到 127
宽字符型wchar_t2字节1 个宽字符
布尔型bool1字节true和false
无类型void

        其中,在不同的操作系统中,有些类型的大小会对应的不同,例如int类型的大小是占一个内存单元,在以前的16操作系统中即占16位(一个字节占8位),即2个字节。后来的32位操作系统里则占32位,即4个字节,在这之后的c++体系里由于习惯延续了4个字节这一传统作为规定。建议使用sizeof(数据类型)来查看自己的数据类型大小,例如sizeof(int);

void类型也叫空类型,不能直接用它定义变量。它的作用主要有三个方面:

  1. 作为函数返回类型表示函数没有返回值。
  2. 当函数不接受参数时,在其参数表申明为void,例如int Num(void);
  3. 作为void * 指针使用,是通用型指针,它可以接收任意类型的指针,也可以解析成任何类型的指针。例如, void *malloc( size_t size );

一些基本类型可以使用一个或多个类型修饰符进行修饰:

  • signed      
  • unsigned  
  • short         
  • long         

一般情况下,short,int,long默认为singed类型,即有符号类型,此时数据的最高位表示为符号位,unsigned为无符号类型,取消符号位(二进制最高位0表示正数,1表示负数)。

例如有符号的int类型的取值范围为 -2147483648~2147483647,无符号位的int类型取值范围是     0 ~ 429496729

short int为短整形占2个字节,long int为长整形占8个字节(同样受操作系统的影响)。
 

二,其他类型

枚举类型

枚举类型是一种派生类型,可以自由定义由常量组成的集合变量。

枚举变量的定义方式:enum 枚举名 { 枚举值表 };

枚举值表中应该罗列出所有的值,这些值也称为枚举元素,不赋值的话,默认第一个元素的值是,缺省的元素由前面元素的值依次加1。枚举值是常量,定义出的枚举变量只能赋值为枚举值;枚举类型定义的可能的取值均为整数。枚举就是一个小整形,它的优点是限制了范围;

enum  Nums{

a,

b=5,

c

}

其中,a=0;c=6;

typedef 自定义类型

typedef 可以为一个已有的类型取一个新的名字即别名,

typedef   返回值类型  新名字 

例如:

typedef int NewInt;

此时,我们就可以用NewInt来作为类型来定义int类型的变量,它的作用在于为一个复杂的别名取一个简单的别名,比如一些复杂的指针。

typedef并不是简单的别名,它其实是对类型的一种封装。区别于宏定义#define的简单替换,需要考虑它在遇到const时的属性。同时它也是一个存储类的关键字,会与static,auto等关键字冲突。

用于学习使用。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值