继续学c++

news2025/1/19 17:00:39

由于c++里面有很多和c语言很像的东西,这里就来总结一点不像的或者要注意的,或者是我已经快忘记的;

先来一个浮点型也就是实型类型的总结;

知道浮点型有这两个类型:float和double型;

然后float型占四个字节,精度为7位有效数字(注意有效数字不只是小数点后面的,是整个数有多少位),double占八个字节精度为15~16位有效数字;然后我心血来潮地用这两个类型来输出3.1415926以显示它们的区别;但是

#include<iostream>
using namespace std;
int main()
{
	float f1 = 3.1415926;
	double f2= 3.1415926;
	cout << f1 << endl << f2 << endl;
	system("pause");
	return 0;
}

后来知道,原来一般情况下,输出一个小数只会输出六位有效数字,不管哪种类型QAQ;

还有一点要注意的是:

默认情况下,编译器将小数当作双精度类型,也就是精度更高的double类型;所以在定义一个float型变量给它赋值小数的时候,这时候,那个小数其实是双精度,编译器会先将它转换为单精度类型再进行赋值操作(不同类型的是不可以赋值的);所以这里有一个小技巧同时也是为了看懂这个句子:

float f=3.12f;

不会吧不会吧不会有人会认为这里的f是同一个f吧,不会还有人差点要把它约掉吧,(说的就是自己);其实这里就是定义一个变量名为f的float变量给他赋值3.12;这个小数后面加了个f指的是编译器刚开始就将它当作了单精度,从而不需要在定义的时候多一步转换;(然后我又试了一下,会不会在小数的后面加一个d就是直接认为单精度呢?然后就报错了,现在想想也是,刚开始编译器就已经把小数当作双精度类型了,还要转换什么吗?);

然后还了解一个科学计数法:

在c语言里面

有时候由于一个数太大或者太小很麻烦,这时候如果这个数里面有这样的特点就可以用科学计数法:

某个数后面有很多个连续的零,小数点后面有很多连续的零:形如:

1230000000;

0.000004;

这时候就可以用科学计数法写成1.23e9;2e-6;也就是在e后面为正的话e后面几个零就相当于10的几次方,而为负的话就是相当于0.1的几次方,但是在一定限度下,计算机打印会自动将科学计数法转换为正常的形式,但是如果超过一定限度,就会直接显示(如果是正数就还会再加一个加号),只不过还可以正常加减,但是这在超过一定限度连正常加减都不可以了(其实不是不可以,只是显示错误,好像和位运算什么的有关,暂时不深入);

下面可以验证:

#include<iostream>
using namespace std;
int main()
{
	float f1 = 3e-6;
	float f2 = 3e-5;
	double f3 = 3e-5;
	double f4 = 3e-6;
	float f5 = 3e-4;
	double f6 = 3e-4;
	cout << f1 <<endl<<f1+1<< endl<<f2<<endl << f2+1<< endl;
	cout << f3 << endl << f3 + 1 << endl << f4<< endl << f4 + 1 << endl;
	cout << f5 << endl << f5 + 1 << endl << f6 << endl << f6 + 1 << endl;

	system("pause");
	return 0;
}

结果是这样的:

可以发现在科学计数法里面

 然后再来看正数:也就是把刚刚的代码的负号去掉

这就很那个只打印六个有效数字一样,而之所以超过了那个限度,但是又没有到double的限度为什么不能计算出正确答案,好像涉及一个比较深入的知识(打印的时候位转换),这里我只是想提醒一下自己 ;如果这个是正的话,可以用整型,范围可能比这个要大一点:最大可以弄到它的最大范围;(虽然有时候整型打印也会出现打印的字节地方出错,但是这里没有问题);

然后再来复习一下字符类型:

字符类型,占用一个节点,且字符型变量并不是将字符本身放进内存,而是将其对应的ASCII码放进内存,当然,还有转换等后续操作;字符型变量用单引号;在ASCII码中0~31给了控制字符,32~126才给课可以显示的字符;还有就是两个要记得:a的ASCII码是97,A是65;

再来介绍几个比较重要的转义字符:

//这个表示注释;也就是可以让编译器忽略它后面的一整行

\\这个表示斜杠在c和c++里面想要打印斜杠,只用一个是会报错的,也就是说,编程里面,编译器看见一个斜杠就会开始之后要有转义字符出现了,像\n是换行,但是单个n只是一个字母,这里\n在c++里面的作用和endl类似,都是换行,但是输出的方式不一样;所以可以把单个斜杠认为一个信号,所以要输出斜杠的话,在变成里面就应该用两个,这时候我就想到了这个:

也就是说,在编译器的认知,我只是向输出一个斜杠一个引号也就是/“ 而且还少打一个引号用来输出,还是看代码更好理解;

 

 

 

输出来的结果是这样的;

也就是说在中文里面,除了字符,其他符号想要正常输出,都要加一个斜杠 ;

编译器出了一点问题,所以今天又要结束了~~

别在年轻的时候, 吃得最胖,活得最懒,爱得最傻, 一生中最好的年轻, 都是一晃而过的,愿你能用心享受它。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/434852.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

To B第六年,腾讯过分温柔

腾讯做2B&#xff0c;方向是正确的&#xff0c;初心是果决的&#xff0c;行动是温柔的&#xff0c;事实是掉队的。 2018年&#xff0c;率先打出“互联网的下半场属于产业互联网”的大旗&#xff0c;宣布“拥抱产业互联网”&#xff0c;腾讯发力To B业务&#xff0c;绝对是有先发…

HTB-Jarvis

HTB-Jarvis 信息收集80端口 www-data(sqlmap)www-data(myPhpAdmin)www-data -> pepperpepper -> root 信息收集 80端口 目录扫描 我啥也没干咋就被ban了&#xff0c;可能是gobuster流量太大被逮住了。 老老实实等90秒&#xff0c;先从已有的目录收集信息。 phpMyAdmin 4…

X 态及基于 VCS 的 X-Propagation 检测

&#x1f525;点击查看精选 IC 技能树系列文章&#x1f525; &#x1f525;点击进入【芯片设计验证】社区&#xff0c;查看更多精彩内容&#x1f525; &#x1f4e2; 声明&#xff1a; &#x1f96d; 作者主页&#xff1a;【MangoPapa的CSDN主页】。⚠️ 本文首发于CSDN&#…

Lightroom Classic2022图文安装教程

Lightroom Classic是一款专业的数字照片处理软件&#xff0c;具有数字照片编辑、照片整理和管理、批量处理、智能预览、输出等特点。 该软件适用于摄影师和数字照片后期处理爱好者&#xff0c;可以帮助用户提高处理效率和照片质量。 Lightroom Classic是Adobe公司推出的系列软…

ai智能写作软件哪个好-ai智能写作免费

人工智能自动写作软件 人工智能自动写作软件是如今数字营销领域中备受瞩目的一种工具。无论是网络文章、博客、报告、新闻稿或者其他一些营销内容&#xff0c;人工智能自动写作软件可以以相当高的速度和质量将其生成&#xff0c;从而释放人类营销人员的时间和精力。 尽管自动写…

深度学习实战案例:基于 AutoRec 构建电影推荐系统( 附 PyTorch 版代码)

文章目录 技术交流前言AutoRec 模型介绍损失函数基于 AutoRec 的推荐过程实验对比消融实验代码实践总结参考 本文要介绍的 AutoRec 模型是由澳大利亚国立大学在2015年提出的&#xff0c;它将自编码器(AutoEncoder)的思想与协同过滤(Collaborative Filter)的思想结合起来&#x…

GitHub 创建 Pull Request 将代码提交至别人的仓库

GitHub 创建 Pull Request 将代码提交至别人的仓库 1 Forking the repository 1.1 About forks (关于 forks) A fork is a new repository that shares code and visibility settings with the original upstream repository. A fork 是一个新的存储库&#xff0c;它与原 ups…

U-Boot 命令使用

进入 uboot 的命令行模式以后输入“help”或者“&#xff1f;”&#xff0c;然后按下回车即可查看当前 uboot 所 支持的命令&#xff0c;如图 所示&#xff1a; 我们输入“help(或?) 命令名”既可以查看命令的详细用法&#xff0c;以“bootz”这 个命令为例&#xff0c;我们输…

4种吃子跳棋

目录 一&#xff0c;双玩家吃子跳棋 玻璃跳棋 大人物跳棋 二&#xff0c;单玩家吃子跳棋 智力游戏67跳棋&#xff08;5&#xff09; 一个挑战 跳瓶盖 欢乐跳跳棋 三&#xff0c;单玩家多目吃子跳棋——Hopping dots 1&#xff0c;Hopping dots 2&#xff0c;规则 3…

说过的话就一定要办到 - redo日志

一、什么是redo日志&#xff1f; 如果我们只在内存的 Buffer Pool 中修改了页面&#xff0c;假设在事务提交后突然发生了某个故障&#xff0c;导致内存中的数据都失效了&#xff0c;那么这个已经提交了的事务对数据库中所做的更改也就跟着丢失了&#xff0c;这会导致事务会失去…

火力全开,重新定义蓝牙耳机!新一代南卡OE Pro不入耳式蓝牙耳机震撼来袭

中国专业声学品牌Nank南卡&#xff0c;在近期推出了南卡OE Pro不入耳蓝牙耳机&#xff0c;是业内首款功能配置齐全的蓝牙耳机&#xff0c;以创新开放式听音方式&#xff0c;让更多人感受到不入耳开放式耳机带来的魅力之处。据了解&#xff0c;有不少媒体猜测&#xff0c;南卡OE…

工作面试老大难 - 锁

一、概述 为保证数据的一致性和完整性&#xff0c;需要对 事务间并发操作进行控制 &#xff0c;因此产生了 锁 。锁冲突 也是影响数据库 并发访问性能 的一个重要因素。所以锁对数据库而言显得尤其重要&#xff0c;也更加复杂。 二、并发问题 MySQL并发事务访问相同记录 &am…

硬件设计--DAPLINK设计

1 参考网站 1、打造属于你自己的STM32下载器调试器--------DAPLink 2、ARMmebed官方开源代码DAPLink 3、ARMmebed官方开源代码DAPLink github加速网站 4、ARMmebed官方开源硬件旧版 5、ARMmebed官方开源硬件新版 6、自制DAPLink – ARM官方源码以及STM32F103C8T6 7、如何做一个…

软件测试之测试名词解释

1. 白盒测试&#xff0c;英文是white-box testing 是通过程序的源代码进行测试而不使用用户界面。这种类型的测试需要从代码句法发现内部代码在算法&#xff0c;溢出&#xff0c;路径&#xff0c;条件等等中的缺点或者错误&#xff0c;进而加以修正。 2. 黑盒测试&#xff0c;英…

word脚标【格式:第X页(共X页)】

不得不吐槽一下这个论文&#xff0c;真的我好头疼啊。我又菜又不想改。但是还是得爬起来改 &#xff08;是谁大半夜不能睡觉加班加点改格式啊&#xff09; 如何插入页码。 格式、要求如下: 操作步骤&#xff1a; ①双击页脚&#xff0c;填好格式&#xff0c;宋体小四和居中都…

除了 Swagger,这个开源 API 管理工具生成文档更高效

提起 Swagger&#xff0c;经常接触接口开发的朋友&#xff0c;一定知道并且都熟练使用了。 Swagger 是一个用于生成、描述和调用 RESTful 接口的 Web 服务。通俗的来讲&#xff0c;Swagger 就是将项目中所有&#xff08;想要暴露的&#xff09;接口展现在页面上&#xff0c;并且…

VMware ESXi 8.0U1 发布 - 领先的裸机 Hypervisor

请访问原文链接&#xff1a;https://sysin.org/blog/vmware-esxi-8-u1/&#xff0c;查看最新版。原创作品&#xff0c;转载请保留出处。 作者主页&#xff1a;sysin.org 2023-04-18, VMware vSphere 8.0U1 发布。 详见&#xff1a;VMware vSphere 8 Update 1 新增功能 产品简…

ai智能写作助手-ai自动写作软件

为什么要用ai智能写作工具 在数字化时代&#xff0c;AI&#xff08;人工智能&#xff09;技术已经被广泛应用于各种领域&#xff0c;其中之一是写作。AI智能写作工具是利用自然语言处理技术和机器学习算法来生成高质量的文章、博客、新闻稿等。这些工具不仅提供了便捷、高效的…

校园网策列及思路

解决思路一&#xff1a; 适合以下情况也是我现在的学校校园网大概情况&#xff1a; 内网不认证情况下可以互联&#xff0c;除了几个常见端口封闭&#xff08;目前已知3389&#xff09;&#xff0c;要联网必须认证登录&#xff0c;而且一个号最多两台设备&#xff08;甚至有时候…

FANUC机器人DCS功能基本介绍

FANUC机器人DCS功能基本介绍 1. 定义 DCS(Dual Check Safety)位置/速度检查功能;利用机器人控制柜中两个独立CPU进行电机速度和位置数据的检查,实时检查位置和速度误差,并通过两个独立的通道关闭电机电源。 DCS功能可以有效地节约占地面积。 DCS功能可以防止机器人工具…