第四章C++数据类型.doc
文本预览下载声明
第四章 C++数据类型
PAGE 16
第一节:C++数据类型
第二节:什么是变量
第三节:变量及数据如何存储在内存上
第四节:布尔型
输出结果:
第五节:字符型
a
0110 0001 97
(注意定义字符格式:英文单引号)属于“强制转换”,以后还会继续讲到,这里只需了解。
全部程序如下:
运行结果:
下面演示:显示从32-127的ASCII码所有字符:
C++特殊字符用作特殊作用:
此时还没有输出“特殊字符”,所以是看不到结果的。
在此,为什么只是回车而不换行?
第六节:双字节型
:
“[ ]”表示定义一个数组;
“LC ALL”表示:
“chs”表示:简体中文。因为各个国家的时间日期、金融货币、语言、文字表达方式都是不同的,所以都要进行设置。
(注意:此处不能用“cout”来作为输出函数,而用“wcout”),但其格式和“cout”一样。)
运行结果:
第七节:整形概述
占据4个字节。
而
下面用“sizeof”函数来测试上面三种整型变量所占据的字节数。
前3个属于有符号型,最后一个是无符号型。和有符号短整型“short”一样都占据2个字节。
它的最高位用作符号位。
第八节:为什么使用补码
当要实现两个数相减的时候,不可以直接相减得出结果,这样的做法是错误的,正确的做法是用被减数加上减数的相反数,也就是把减法运算转换成加法运算。在被减数转换过程中,此时用到补码的作用。正数的补码是其本身,负数求补码:按位反存再加一。
第九节:整型变量的定义
是“unsigned int b=-2;”的缩写。
注:此处cout语句并不完整,请读者自行补充,然后运行:下面对结果的分析:
(由于“unsigned int”型占据4个字节(32位),因此为此二进制形式。)
【整形变量的溢出:】
(注:“short int(占据二个字节16位)”型最大值为32767)而b为什么会是-32678.下面把他们转换为二进制就清楚了。
32767的二进制为 111 1111 1111 1111(最高位为符号位,因为是正数为0,所以省略了)
-32768的二进制为 1000 0000 0101 1010
此时:111 1111 1111 1111 + 1 = 1000 0000 0101 1010
第十节:浮点型变量
(该结果只输出了六位,并且第六位也是通过四舍五入,后面的小数位全都射去了)
假如我们需要结果全部输出,则需要一个函数“setprecision()”,该函数用来设置输出的精度,也就是用来设置输出多少位数字,即使不够也要拼凑够了输出来。该函数在输入输出流控制头文件中定义,所以要添加改头文件。
但是从第七位往后九不正确了,也就是它的精确数据保持在6-7位之间。
假如需要更高精度,那把“float”类型换成“double”类型。“double”占用8个字节,比“float”多占一倍,因此它的精度也大了一倍,这样“double”的有效数字就是15或者16位。
第十一节:常量
第十二节:枚举型常量
枚举常量的作用:可使程序的可读性增强。
显示全部