当前位置: 首页 > news >正文

【C++】cout.self()函数

📢博客主页:https://blog.csdn.net/2301_779549673
📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
📢本文作为 JohnKi 学习笔记,借鉴了部分大佬案例
📢未来很长,值得我们全力奔赴更美好的生活✨

在这里插入图片描述

在这里插入图片描述

文章目录

  • 📢前言
  • 🏳️‍🌈cout.setf(ios base::fixed, ios base::floatfield);怎么解释
  • 🏳️‍🌈下面详细介绍 setf() 的两个原型的使用:
    • ❤️setf()的第一原型:
    • 🧡setf()的第二原型:


📢前言

笔者在学习浮点数这一块的时候经常看到这样的一部分代码,一开始对着cout.setf本着将就看着,之后学到在搞明白的心思,但是见得实在是太多次了,于是乎用一次性搞明白这句话的意思及怎么用

#include <iostream>
int main() {using namespace std;cout.setf(ios base::fixed, ios base::floatfield);float tree = 3;    // int converted to floatint guess(3.9832); // double converted to intint debt = 7.2E12; // result not defined in C++cout << "tree = " << tree << endl;cout << "guess =" << guess << endl;cout << "debt =" << debt << endl;return 0;
}

🏳️‍🌈cout.setf(ios base::fixed, ios base::floatfield);怎么解释

C++中通过cout来实现格式输出,就类似于C语言中通过printf()来实现格式输出。

  • cout.setf()的作用是通过设置格式标志来控制输出形式,
  • 其中ios_base::fixed表示:用正常的记数方法显示浮点数(与科学计数法相对应),本质上是设置cout为定点输出格式
  • ios_base::floatfield表示小数点后保留6位小数。

该问题中调用的是setf()函数的第二个原型,setf()函数有两个原型,分别是:

fmtflags setf(fmtflage) //第一原型
fmtflags setf(fmtflags, fmtflags)  //第二原型
//fmtflags 是 bitmask 类型(一种用来存储各个位值的类型)的 typedef 名
//显而易见,两个原型的主要区别在于参数数量不同

🏳️‍🌈下面详细介绍 setf() 的两个原型的使用:

❤️setf()的第一原型:

C++为标准输入和输出定义了一些格式标志, 它可以通过flags(), setf(), 和 unsetf() 三个函数来控制.

cout.setf(ios_base::left); //对所有cout的输出进行左对齐调整.

还有一些常见的标志:

在这里插入图片描述

// 形式一:
cout << showpos << 255 << endl;// 形式二:
showpos(cout);
cout << 255 << endl;// 形式三:
cout.setf(ios_base::showpos);
cout << 255 << endl;
//输出: +255
// 形式一:
cout << scientific << 255.255 << endl;// 形式二:
scientific(cout);
cout << 255.255 << endl;// 形式三:
cout.setf(ios_base::scientific);
cout << 255.255 << endl;
//输出: 2.55255e+02

iostream中定义的操作符
在这里插入图片描述
iomanip中定义的操作符
在这里插入图片描述

cout << setiosflags(ios_base::scientific) << 255.255 << endl;
//输出: 2.55255e+02
cout << setiosflags(ios_base::scientific); //启用scientific标志
cout << resetiosflags(ios_base::scientific); //关闭scientific标志
cout << setprecision(4) << 255.255 << endl; //设置输出数值的精度为4位
//输出: 255.3

🧡setf()的第二原型:

第二原型包含两个参数,
第一个参数和第一原型里的参数一样,
第二个参数指出要清除第一参数中的哪些位,

也就是说,在第二原型中,第一个参数指出要设置哪些位,第二个参数指出要清除哪些位。

虽然听起来很麻烦,但实际上用起来却很简单,只需按自己的实际需求在下表中找到对应的参数套上去就可以了。

在这里插入图片描述


本篇博文对 cout.self()函数 做了一个较为详细的介绍,不知道对你有没有帮助呢

觉得博主写得还不错的三连支持下吧!会继续努力的~

请添加图片描述

相关文章:

【C++】cout.self()函数

&#x1f4e2;博客主页&#xff1a;https://blog.csdn.net/2301_779549673 &#x1f4e2;欢迎点赞 &#x1f44d; 收藏 ⭐留言 &#x1f4dd; 如有错误敬请指正&#xff01; &#x1f4e2;本文作为 JohnKi 学习笔记&#xff0c;借鉴了部分大佬案例 &#x1f4e2;未来很长&#…...

VueQuill 富文本编辑器技术文档快速上手

VueQuill 富文本编辑器技术文档 1. 安装 VueQuill2. 配置 VueQuill3. 在组件中使用 VueQuill4. 配置选项5. 事件处理6. 数据格式7. 自定义工具栏8. 示例项目结构9. 常见问题如何添加图片上传功能&#xff1f;如何自定义编辑器主题&#xff1f; 在此之前&#xff0c;我讲解过关于…...

链式二叉树oj题

1.输入k &#xff0c;找第k层节点个数 int TreeKlevel(BTNode*root,int k) {if (root NULL) {return 0;}if (k 1) {return 1;}return TreeKlevel(root->left, k - 1)TreeKlevel(root->right, k - 1); } 在这里我们要确定递归子问题&#xff0c;第一个就是NULL时返回&…...

Curator 是一个开源工具为 Elasticsearch 集群设计,用于自动化索引的维护任务。

Elasticsearch 使用 Curator 进行索引生命周期管理是一种常见的做法&#xff0c;Curator 是一个开源的 Python 工具&#xff0c;专为 Elasticsearch 集群设计&#xff0c;用于自动化索引的维护任务。以下是使用 Curator 进行索引生命周期管理的一些关键步骤和概念&#xff1a; …...

STM32-PWR和WDG看门狗

本内容基于江协科技STM32视频学习之后整理而得。 文章目录 1. PWR1.1 PWR简介1.2 电源框图1.3 上电复位和掉电复位1.4 可编程电压监测器1.5 低功耗模式1.6 模式选择1.7 睡眠模式1.8 停止模式1.9 待机模式1.10 库函数 2. WDG看门狗2.1 WDG简介2.2 IWDG框图2.3 IWDG键寄存器2.4 …...

C++循环队列 经典示例

循环队列&#xff08;Circular Queue&#xff09;&#xff0c;又称环形缓冲区&#xff0c;是一种常用的数据结构&#xff0c;特别适用于资源有限的场合&#xff0c;比如操作系统中的任务调度、网络数据缓冲等。循环队列在数组的基础上实现&#xff0c;逻辑上首尾相连&#xff0…...

【程序大侠传】大表分库分表切换数据库类型导致pagehelper生成sql语法报错

前序 代码剑宗等级分明&#xff0c;其门下弟子等级划分如下&#xff1a; 入门弟子 刚刚拜入代码剑宗&#xff0c;学习基础编程语言和基本剑法&#xff08;语法和基础概念&#xff09;。他们的代码还显得生涩&#xff0c;但已经开始展现出对优雅代码的追求。 江湖小虾 初步掌握…...

7、Redis 队列与 Stream

引言 Redis 自 5.0 版本起引入了一种新的数据结构——Stream。这种数据结构不仅增加了 Redis 的数据处理能力&#xff0c;还使其在消息队列和数据流处理方面更具竞争力。Stream 提供了持久化、多播、消费组等功能&#xff0c;可以满足多种复杂的数据处理需求。 1. Redis Stre…...

FFT剖析

快速傅里叶变换 (fast Fourier transform) xn{x0,x1,…xn-1} (num:N) 旋转因子系数&#xff1a; d2pik/N 旋转因子 wk(n)(cos(dn)isin(dn)) n[0,N-1] y(k) sum(x(n)wk(n),0,N-1) y(k){y(0),y(1),…y(N-1)} 傅里叶级数 x(n)wk(n)的级数是&#xff1a; 1.d2pik/N 这个系数决…...

git clone报错RPC failed; curl 92 HTTP/2 stream 7 was not closed cleanly

问题描述 git clone github上的项目报错: RPC failed; curl 92 HTTP/2 stream 7 was not closed cleanly: CANCEL (err 8) 4796 bytes of body are still expected fetch-pack: unexpected disconnect while reading sideband packet early EOF fetch-pack: invalid index-pac…...

Apispec,一个用于生成 OpenAPI(Swagger)规范的 Python 库

目录 01什么是 Apispec&#xff1f; 为什么选择 Apispec&#xff1f; 安装与配置 02Apispec 的基本用法 生成简单的 API 文档 1、创建 Apispec 实例 2、定义 API 路由和视图 3、添加路径到 Apispec 集成 Flask 和 Apispec 1、安装…...

SpringBoot 自定义异常返回数据格式

Spring Boot 默认异常处理 当我们用 spring boot 开发接口是&#xff0c;当遇到异常时返回的数据格式是如下形式的 {"timestamp": "2024-07-06T02:48:55.79100:00","status": 404,"error": "Not Found","path":…...

【xinference】(15):在compshare上,使用docker-compose运行xinference和chatgpt-web项目,配置成功!!!

视频演示 【xinference】&#xff08;15&#xff09;&#xff1a;在compshare上&#xff0c;使用docker-compose运行xinference和chatgpt-web项目&#xff0c;配置成功&#xff01;&#xff01;&#xff01; 1&#xff0c;安装docker方法&#xff1a; #!/bin/shdistribution$(…...

【Unity 3D角色移动】

【Unity 3D角色移动】 在Unity 3D中实现角色移动通常涉及到几个关键步骤&#xff0c;包括设置角色的物理属性、处理输入、更新角色的位置以及动画同步。下面是实现基本3D角色移动的步骤和示例代码&#xff1a; 步骤1&#xff1a;设置角色的物理属性 角色通常使用Character Co…...

个人视角,社会影响力:自媒体的魅力所在

随着数字化时代的到来&#xff0c;自媒体正成为信息传播领域的一场革命。个人视角与社会影响力的结合&#xff0c;赋予了自媒体独特的魅力。在传统媒体受限制的同时&#xff0c;自媒体为每个人提供了表达自己观点和思想的自由。个体的真实视角使得自媒体在信息传播中发挥着重要…...

算法训练营day70

题目1&#xff1a;108. 冗余连接 (kamacoder.com) #include<iostream> #include<vector>using namespace std;int n; vector<int> father(10001, 0);void init() {for(int i 1;i < n;i) father[i] i; }int find(int u) {return u father[u] ? u : fa…...

EtherCAT转Profinet网关配置说明第二讲:上位机软件配置

EtherCAT协议转Profinet协议网关模块&#xff08;XD-ECPNS20&#xff09;&#xff0c;不仅可以实现数据之间的通信&#xff0c;还可以实现不同系统之间的数据共享。EtherCAT协议转Profinet协议网关模块&#xff08;XD-ECPNS20&#xff09;具有高速传输的特点&#xff0c;因此通…...

日志自动分析-Web---360星图GoaccessALBAnolog

目录 1、Web-360星图(IIS/Apache/Nginx) 2、Web-GoAccess &#xff08;任何自定义日志格式字符串&#xff09; 源码及使用手册 安装goaccess 使用 输出 3-Web-自写脚本&#xff08;任何自定义日志格式字符串&#xff09; 4、Web-机器语言analog&#xff08;任何自定义日…...

【面试八股文】java基础知识

引言 本文是java面试时的一些常见知识点总结归纳和一些拓展&#xff0c;笔者在学习这些内容时&#xff0c;特地整理记录下来&#xff0c;以供大家学习共勉。 一、数据类型 1.1 为什么要设计封装类&#xff0c;Integer和int区别是什么&#xff1f; 使用封装类的目的 对象化:…...

ssrf结合redis未授权getshell

目录 漏洞介绍 SSRF Redis未授权 利用原理 环境搭建 利用过程 rockylinux cron计划任务反弹shell 写公钥免密登录 ubuntu 写公钥免密登录 漏洞介绍 SSRF SSRF&#xff08;server side request forgrey&#xff09;服务端请求伪造&#xff0c;因后端未过滤用户输入&…...

魔法自如:精通 IPython %automagic 命令的切换艺术

魔法自如&#xff1a;精通 IPython %automagic 命令的切换艺术 在 IPython 的神奇世界里&#xff0c;魔术命令是其强大交互功能的核心。这些以 % 或 %% 开头的命令&#xff0c;能够执行一系列特殊的操作&#xff0c;从而增强用户的编程体验。但是&#xff0c;你是否知道&#…...

基于CentOS Stream 9平台搭建MinIO以及开机自启

1. 官网 https://min.io/download?licenseagpl&platformlinux 1.1 下载二进制包 指定目录下载 cd /opt/coisini/ wget https://dl.min.io/server/minio/release/linux-amd64/minio1.2 文件赋权 chmod x /opt/coisini/minio1.3 创建Minio存储数据目录&#xff1a; mkdi…...

shell-awk语法整理

shell-awk语法整理 前言基本语法内置变量1. $02. NF3. NR4. FS5. RS6. OFS7. ORS8. FILENAME9. FNR10. ARGV11. ENVIRON12. IGNORECASE13. RSTART 和 RLENGTH示例解释 内置函数循环语句&#xff08;后面的;可不加&#xff09;条件语句高级特性示例 特殊模式BEGINEND组合示例BEG…...

关于忠诚:忠于自己的良知、理想、信念

关于忠诚&#xff1a; 当我们面对公司、上司、爱人、恋人、合作伙伴还是某件事&#xff0c;会纠结离开还是留下&#xff0c;这里我们要深知忠诚的定义&#xff0c;我们不是忠诚于某个人、某件事、或者某个机构&#xff0c;而是忠诚于自己的良知&#xff0c;忠诚于自己的理想和…...

探索Linux:开源世界的无限可能

Linux是一款开源操作系统&#xff0c;它的起源可以追溯到上世纪90年代初。这个故事始于一个名叫Linus Torvalds的芬兰大学生&#xff0c;他在1983年开始编写一个用于个人电脑的操作系统内核。在他的努力下&#xff0c;Linux逐渐发展成为一个稳定而强大的操作系统。 然而&#…...

深度学习之半监督学习:一文梳理目标检测中的半监督学习策略

什么是半监督目标检测&#xff1f; 传统机器学习根据训练数据集中的标注情况&#xff0c;有着不同的场景&#xff0c;主要包括&#xff1a;监督学习、弱监督学习、弱半监督学习、半监督学习。由于目标检测任务的特殊性&#xff0c;在介绍半监督目标检测方法之前&#xff0c;我…...

Hive 高可用分布式部署详细步骤

目录 系统版本说明 hive安装包下载及解压 上传mysql-connector-java的jar包 配置环境变量 进入conf配置文件中&#xff0c;将文件重命名 在hadoop集群上创建文件夹 创建本地目录 修改hive-site.xml文件 同步到其他的节点服务器 修改node02中的配置 hive-site.xml 修改…...

ubuntu下运行程序时提示缺库问题的有效解决方法

目录 一、问题现象二、解决方式三、总结 一、问题现象 当我们平时在ubuntu上运行一个程序时时长会遇到如下情况&#xff0c;含义为本机缺少执行程序需要的库 这时候我们可能会根据缺少的库使用apt install 库名的模糊名字 进行安装&#xff0c;然后再去运行&#xff0c;此时可…...

GNU/Linux - wic文件的使用

Yocto/OpenEmbedded使用的磁盘镜像格式是 wic。为嵌入式系统提供 bootable images。 The disk image format used in the Yocto Project is wic. .wic 文件显然只是一个带有分区表和分区的磁盘镜像&#xff0c;就像下载 Linux 发行版时获得的所有 .img 文件一样。这就是为什么你…...

前端JS 插件实现下载【js-tool-big-box,下载大文件(fetch请求 + 下载功能版)

上一节&#xff0c;我们添加了下载大文件的纯功能版&#xff0c;意思就是需要开发者&#xff0c;在自己项目里发送请求&#xff0c;请求成功后&#xff0c;获取文件流的blob数据&#xff0c;然后 js-tool-big-box 帮助下载。 但考虑到&#xff0c;有些项目&#xff0c;可能比较…...