第四章 C++数据类型
1. C++数据类型
C++有六种基本数据类型,bool char wchar_t int float double
2. 什么是变量
☆初始化(检查出错或作为默认值(可举例年龄的例子))和赋值的区别
3. 变量及数据如何存储在内存上
十进制、二进制、八进制、十六进制之间的相互转化(十进制转八进制就是看有都少个8的幂(从0次幂开始),从高到低的减。二、十六同理)十六进制:10~~15:ABCDEF。
二进制:1 2 4 8 16 32 64 128 256 512 1024(举例:888(十进制))
4. 布尔型
①bool型变量②bool函数
bool取值false和true,是0和1的区别; false可以代表0,但true有很多种,并非只有1。
5. 字符型
0~32及127号是控制字符或通讯专用字符,如7~13:a、、 、 、v、f、 分别是报警、退一格、水平列表、换行、垂直制表、换页、回车。
\, ” ? \ 00 八进制 xhh 十六进制。(能代表1~254所代表的字符)
部分ASCII码代表的值:48~57:0~9。65~90:A~Z。97~122:a~z。
1 cout<<"特殊字符: "; 2 char ch1='60',ch2='x30'; //单引号//此处表示的是字符0,ASCII值为048(十进制)****************③ 3 cout<<ch1<<" "<<ch2<<endl;
6. 双字节型
wchar_t 双字节型:
1 #include"iostream" 2 #include "locale" 3 using namespace std; 4 int main() 5 { 6 setlocale(LC_ALL,"chs"); 7 wchar_t wt[]=L"中国人"; 8 wcout<<wt<<endl; 9 return 0; 10 }
7. 整型概述
各种型号的长度以及数值范围:
指针长度由系统位数(32位/64位)而定:
8. 为什么使用补码
补码(two's complement) 1、在计算机系统中,数值一律用补码来表示(存储)。主要原因:使用补码,可以将符号位和其它位统一处理;同时,减法也可按加法来处理。另外,两个用补码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。 2、补码与原码的转换过程几乎是相同的。
负数的原码补码换算:
正数:原码=反码=补码
负数:原码→反码:符号位不变,其他取反
负数:补码↔原码:符号位不变,其他取反再加1
9. 整型变量的取值范围
整形变量不会溢出而是像汽车里程表那样达到最大值后又从最小值开始计数
10. 浮点型变量
11. 常量
const的使用
12. 枚举型常量
1 //enum为关键字 num为类名 2 enum num{Mon,Tues,Wednes,Thurs,Fri,Satur,Sun};//枚举类型*******************⑥ 3 enum num a,b,c; 4 a=Mon; 5 b=Tues; 6 c=Satur; 7 cout<<a<<" "<<b<<" "<<c<<endl;
本章总结:
1 //C++有六种数据类型,bool char wchar_t int float double 2 #include<iostream> 3 using namespace std; 4 int main() 5 { 6 /*int age=0; //初始化(检查出错或作为默认值(可举例年龄的例子))和赋值的区别***********① 7 a:cout<<"请输入年龄: "; 8 cin>>age; 9 if(age==0) 10 goto a; 11 cout<<age<<endl; 12 13 14 bool check=true; //false=0,true=1***********② 15 if(check==0) 16 { 17 cout<<"你输入的年龄不符合要求! "; 18 }*/ 19 20 21 cout<<"特殊字符: "; 22 char ch1='60',ch2='x30'; //单引号//此处表示的是字符0,ASCII值为048(十进制)****************③ 23 cout<<ch1<<" "<<ch2<<endl; 24 25 //float只适用6位(十进制)有效数字*********************④ 26 27 //补码:在计算机中,数字是以补码形式存在的 原码→补码:符号位不变,其他取反再加1 28 //补码→原码:符号位不变,其他取反再加1*******************⑤ 29 30 //enum为关键字 num为类名 31 enum num{Mon,Tues,Wednes,Thurs,Fri,Satur,Sun};//枚举类型*******************⑥ 32 enum num a,b,c; 33 a=Mon; 34 b=Tues; 35 c=Satur; 36 cout<<a<<" "<<b<<" "<<c<<endl; 37 38 return 0; 39 40 } 41 42 //#include"iostream" 43 //#include "locale" 44 //using namespace std; 45 //int main() 46 //{ 47 // setlocale(LC_ALL,"chs"); 48 // wchar_t wt[]=L"中国人"; 49 // wcout<<wt<<endl; 50 // return 0; 51 //}