C++基本数据类型(转)
C++中定义了一组表示整数、浮点数、单个字符和布尔值的算术类型(arithmetic type)。
另外还定义了一种叫做void的特殊类型。void类型没有对应的值,仅用在有限的一些情况下,通常用作无返回值函数的返回类型。
算术类型的存储空间依机器而定。这里的存储空间是指用来表示该类型的二进制位(bit)数。
C++标准规定了每个算术类型的最小存储空间,但它并不阻止编译器使用更大的存储空间。
事实上,对于int类型,几乎所有的编译器使用的存储空间都比所要求的大。
因为位数不同,这些类型所能表示的最大(最小)值也因机器的不同而有所不同。
C++算术类型的最小存储空间
类型+含义+最小存储空间如下:
bool 布尔型
char 字符型 8位
wchar_t 宽字符型 16位
short 短整型 16位
int 整形 16位
long 长整形 32位
float 单精度浮点型 6为有效数字
double 双精度浮点型 10位有效数字
long double 扩展精度浮点型 10位有效数字
整形
表示整数、字符和布尔值的算术类型合称为整形(integral type)。
通常将8位的块作为一个字节,32位或4个字节作为一个字(word).
一般的,short类型为半个机器字(word)长,int类型为一个机器字长,而long类型为一个或两个机器字长(在32位机器中int类型和long类型通常字长是相同的)。
bool类型表示true和false。可以将算术类型的任何值赋给bool对象。
0值算术类型代表false,其他任何非零的值都代表true。
符号
除bool类型外,整形可以是带符号的(signed)也可以是无符号的(unsigned)。
无符号类型只能表示大于等于0的数,而带符号整形可以表示正数和负数。
整形int,short和long都默认为带符号型。
要获得无符号型则必须指定该类型为unsigned。比如unsigned long。
unsigned int 可以简写为unsigned。
浮点型
类型float、double和long double分别表示单精度浮点数、双精度浮点数和扩展精度浮点数。
一般float用一个字(32位)来表示,double类型用两个字(64位来表示),long double类型用三个或四个字(96或128位)来表示。
float型只能保证6位有效数字,而double型至少可以保证10位有效数字。
最新文章
- 四种解析和创建方式(DOM,SAX,DOM4J,JDOM)
- Ubuntu中查看32还是64
- SAP SD 需求类别确定
- Java获取本地IP地址
- Winforms-GePlugin-Control-library
- WebDriver 在使用 CSS Selector 与 XPath 在查找元素时如何取舍
- PXE批量部署linux操作系统
- 10.python中的序列
- Match &; Catch
- 2014.9.23window对象
- C++标准库string类型的使用和操作总结
- [转]解决scrapy下载图片时相对路径转绝对路径的问题
- Linux /etc/sudoers 文件详解
- mybatis_02简单操作数据库
- ipv6 docker
- Android privilege escalation to mediaserver from zero permissions (CVE-2014-7920 + CVE-2014-7921)
- cache 访问频率的思考
- Java方法containsAll学习
- MySQL的mysql.sock文件作用(转)
- 【软件】chrome设置默认字体
热门文章
- javascript slice array to num subarray
- 汇编调用C程序
- Rhythmk 一步一步学 JAVA(8) JUnit 使用
- 利用FFmpeg玩转Android视频录制与压缩(二)<;转>;
- Windows Intel VT-x开启
- os.path.dirname( __ file __ ) 2018/6/2
- ADB Not Responding - Android Studio
- DNS处理模块dnspython
- 十大基于Docker的开发工具
- SpringBoot全局异常的捕获设置