省流:
(如果能回答出这些问题本文对你几乎无用)
1.整型、浮点型的分类及其区别?
2.字符型的存储方式?
3.以上类型占用内存空间大小?
4.sizeof用法?
5.常用转义字符有哪些?怎么用?
6.布尔类型是什么?
7.如何进行强制类型转换?
(如果你已经学过有了基础或者太懒不想思考这些问题可以只看彩色(非黑色)的部分,而黑色的都是基础知识中的,emmm,基础知识)
(另外,在我眼中,红橙黄绿青蓝紫代表重要级,红最重要)
一、数据类型之整型:
(1)short: 占用两个字节
(2)int : 占用四个字节
(3)long: 在windows环境下占用四个字节
(4)long long: 占用八个字节
二、数据类型之浮点型:
(1)float(单精度浮点型):占用四字节,能精确约六位有效数字;
(2)double(双精度浮点型):占用八字节,能精确表示约16位有效数字;
(3)浮点型辨析:
①字面型小数默认是double型,除非在小数后加f;
如:float f = 3.14;这时会发生double向float的转换;
而float f = 3.14f;就不会发生这种转换,因为这时3.14本身就是float型了;
②当数字有效数字超过六位的时候,一般默认输出六位有效数字(从高位开始计数),例如:12345.54321会输出12345.5,2345.5432会输出2345.54,(无论float还是double);
三、数据类型之字符型
(1)符号:char
(2)说明:
①要用单引号包括且单引号内只能有一个字符;即不能如'abaaba';
②占用一个字节;
③存储时是将对应的ASCLL码存储在内存中的,而非存储字符;
四、sizeof:
(1) 用法:
sizeof(作用对象);
(2) 作用对象分类:
①数据类型,如int,float,double;
②变量,如sizeof(a); a为int型变量
五、强制类型转换:
举一例:例如将一个double型变量转换为int型变量,代码及相应解释如下
具体而言,只要在待转换变量前用括号包裹目标类型即可;
//.......只写关键部分
double a = 5.1;//声明并初始化一个双精度浮点型变量a
int c = int (a);//将a强制转换为整数并且赋给变量c
//......
六、转义字符(常用)
(1)常用:换行\n 制表符\t 纯反斜杠\\ 纯单引号\' 纯双引号\"
直接输出反斜杠、引号会产生问题,因为编译器不能判断它们是用来包裹其它元素的还是纯输出的
(2)\t,使得包括其前面的东西占用的位置统一为制表符对应空格数
如:输出aaa\tbb和输出aaaaaa\tbb的时候输出结果中bb是对齐的,前面空缺的都会用空格补齐
(3)演示:
#include<iostream>
int main()
{
std::cout<<"\'\"ababa"<<std::endl<<"bb\tababa"<<std::endl<<"bbbb\tababa";
return 0;
}
/*输出结果为
'"ababa
bb ababa
bbbb ababa
*/
七、布尔类型
(1)分类:
①true: 真
②false: 假
(2)占用一个字节的空间;
(3)声明:bool 变量名 = true (or false);
(4)本质上,true为1,false为0;
(5)辨析:
①在C++中,当你使用 std::cout 来打印一个布尔类型的值(bool 类型),默认情况下它会打印 1 或 0,而不是 true 或 false。这是因为C++ IO流将布尔值视为整数类型来输出,除非特别指定;
②具体方法:std::boolalpha 是一个I/O流操纵符,它专门用于控制布尔值如何在输入输出流中表示。当输出 bool 类型时,如果设置了 std::boolalpha,则会打印 true 或 false。否则会以整数的形式(1 或 0)打印;
#include<iostream>
int main()
{
//std::cout<<std::boolalpha;这里没被注释掉的时候输出为ture,注释掉之后输出为1
std::cout<<true;
return 0;
}
球球了,有问题跟我讨论讨论呗
免责声明:有问题可以讨论,或者自个儿想办法弄明白,嘻嘻,总之别骂我