C++ ios_base类

发布时间:2026/7/17 11:51:28

C++ ios_base类
目录一_Fmtfl 格式二width 格式三precision 格式四sync_with_stdio函数ios_base类是输入输出流的一个基础类。The classios_baseis a multipurpose class that serves as the base class for all I/O stream classes.一_Fmtfl 格式这个成员的每一位都用来控制流的一个属性初始化_Fmtfl skipws | dec; 初始值是513读取flags()替换flags(fmtflags _Newfmtflags)加格式setf(fmtflags _Newfmtflags)在给定的mask内设置格式setf(fmtflags _Newfmtflags, fmtflags _Mask)相关库函数_NODISCARD fmtflags __CLR_OR_THIS_CALL flags() const { return _Fmtfl; } fmtflags __CLR_OR_THIS_CALL flags(fmtflags _Newfmtflags) { // set format flags to argument const fmtflags _Oldfmtflags _Fmtfl; _Fmtfl _Newfmtflags _Fmtmask; return _Oldfmtflags; } fmtflags __CLR_OR_THIS_CALL setf(fmtflags _Newfmtflags) { // merge in format flags argument const ios_base::fmtflags _Oldfmtflags _Fmtfl; _Fmtfl | _Newfmtflags _Fmtmask; return _Oldfmtflags; } fmtflags __CLR_OR_THIS_CALL setf( fmtflags _Newfmtflags, fmtflags _Mask) { // merge in format flags argument under mask argument const ios_base::fmtflags _Oldfmtflags _Fmtfl; _Fmtfl (_Oldfmtflags ~_Mask) | (_Newfmtflags _Mask _Fmtmask); return _Oldfmtflags; } void __CLR_OR_THIS_CALL unsetf(fmtflags _Mask) { // clear format flags under mask argument _Fmtfl ~_Mask; }示例int main() { cout cout.flags() endl; cout.setf(ios::unitbuf); cout cout.flags() endl; cout.unsetf(ios::unitbuf); cout cout.flags() endl; return 0; }输出513515513其中ios::unitbuf是常数2其他的 _Fmtfl 格式二width 格式width用来控制整数输出的宽度即占几个字符相关库函数_NODISCARD streamsize __CLR_OR_THIS_CALL width() const { return _Wide; } streamsize __CLR_OR_THIS_CALL width(streamsize _Newwidth) { // set width to argument const streamsize _Oldwidth _Wide; _Wide _Newwidth; return _Oldwidth; }示例int main() { for (int i 0; i 100; i) { if (i % 10 0)cout endl; cout.width(3); cout i; } return 0; }三precision 格式precision用来控制浮点数的输出精度相关库函数_NODISCARD streamsize __CLR_OR_THIS_CALL precision() const { return _Prec; } streamsize __CLR_OR_THIS_CALL precision(streamsize _Newprecision) { // set precision to argument const streamsize _Oldprecision _Prec; _Prec _Newprecision; return _Oldprecision; }示例int main() { cout.precision(3); cout 1.414213562; return 0; }输出1.41四sync_with_stdio函数Sets whether the standard C streams are synchronized to the standard C streams after each input/output operation.相关库函数static bool __CLRCALL_OR_CDECL sync_with_stdio( bool _Newsync true) { // set C/C synchronization flag from argument _BEGIN_LOCK(_LOCK_STREAM) // lock thread to ensure atomicity const bool _Oldsync _Sync; _Sync _Newsync; return _Oldsync; _END_LOCK() }其中_Sync是私有静态成员__PURE_APPDOMAIN_GLOBAL static bool _Sync;这表明所有的流共享一个_Sync成员。

相关新闻

Windows Defender 终极禁用指南:开源工具Defender Control完整使用教程

Windows Defender 终极禁用指南:开源工具Defender Control完整使用教程

2026/7/17 11:51:28

Windows Defender 终极禁用指南:开源工具Defender Control完整使用教程 【免费下载链接】defender-control An open-source windows defender manager. Now you can disable windows defender permanently. 项目地址: https://gitcode.com/gh_mirrors/de/defende…

Win10网信政府版磁盘共享

Win10网信政府版磁盘共享

2026/7/17 11:51:28

共享主机(被访问主机): 1.添加访问用户 gpedit.msc 打开本地组策略编辑器2.关闭拒绝访问3.设置网络共享、关闭密码保护4.启用Smb1.0/cifs文件共享支持5.共享文件访问主机: 1.启用不安全来宾登录2.启用Smb1.0/cifs文件共享支持访问…

windows server 2003 连接 win10 共享打印机

windows server 2003 连接 win10 共享打印机

2026/7/17 11:51:28

Windows server 2003 可访问win10主机,但无法连接打印机,报错“提供凭证不足……”1.在server主机上加载驱动安装一台打印机2.控制面板—>打印机和传真—>选中安装的打印机右击“属性”—>端口—>添加端口—>local port—>新端口—>…

AI数字人平台推荐:短视频口播、带货出片和跨境多语种怎么选

AI数字人平台推荐:短视频口播、带货出片和跨境多语种怎么选

2026/7/17 13:21:31

AI数字人平台推荐:短视频口播、带货出片和跨境多语种怎么选 AI数字人平台越来越多,但真正选起来并不复杂。不要先问“哪个平台最强”,要先问“我要拿它做什么”。同样是AI数字人,短视频口播、直播带货、老板IP、企业培训、跨境多语…

CPM4OSSP-SERVER多节点集群部署:构建高可用软件包管理平台

CPM4OSSP-SERVER多节点集群部署:构建高可用软件包管理平台

2026/7/17 13:21:31

CPM4OSSP-SERVER多节点集群部署:构建高可用软件包管理平台 【免费下载链接】CPM4OSSP-SERVER The server of centralized management platform for operating system software package 项目地址: https://gitcode.com/openeuler/CPM4OSSP-SERVER 前往项目官网…

微信聊天记录永久保存终极指南:用WeChatMsg轻松掌握你的数字记忆

微信聊天记录永久保存终极指南:用WeChatMsg轻松掌握你的数字记忆

2026/7/17 13:21:31

微信聊天记录永久保存终极指南:用WeChatMsg轻松掌握你的数字记忆 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trendin…

OneNote迁移终极方案:5步完成无损笔记转换到Markdown

OneNote迁移终极方案:5步完成无损笔记转换到Markdown

2026/7/17 13:21:31

OneNote迁移终极方案:5步完成无损笔记转换到Markdown 【免费下载链接】onenote-md-exporter ConsoleApp to export OneNote notebooks to Markdown formats 项目地址: https://gitcode.com/gh_mirrors/on/onenote-md-exporter 你是否正在寻找一种可靠的方法将…

CANN/asc-devkit:获取TPipe指针API

CANN/asc-devkit:获取TPipe指针API

2026/7/17 13:21:31

GetTPipePtr 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言,原生支持C和C标准规范,主要由类库和语言扩展层构成,提供多层级API,满足多维场景算子开发诉求。 项目地址: https://gitcode.co…

深度解析LibreDWG:开源DWG文件处理库的架构设计与AutoCAD 2022兼容性实现

深度解析LibreDWG:开源DWG文件处理库的架构设计与AutoCAD 2022兼容性实现

2026/7/17 13:11:31

深度解析LibreDWG:开源DWG文件处理库的架构设计与AutoCAD 2022兼容性实现 【免费下载链接】libredwg Official mirror of libredwg. With CI hooks and nightly releases. PRs ok 项目地址: https://gitcode.com/gh_mirrors/li/libredwg LibreDWG是一个功能强…

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践

2026/7/17 10:50:47

Unity游戏文本翻译架构深度解析:XUnity.AutoTranslator的技术实现与工程实践 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator XUnity.AutoTranslator作为Unity游戏社区中最成熟的文本翻译解决方…

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持

2026/7/16 14:29:31

openEuler Raspberry Pi Kernel设备驱动开发指南:为树莓派硬件添加支持 【免费下载链接】raspberrypi-kernel It provides openEuler kernel source for Raspberry Pi 项目地址: https://gitcode.com/openeuler/raspberrypi-kernel 前往项目官网免费下载&…

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧

2026/7/16 14:18:17

openEuler系统集成测试实战:基于smoke-test套件的环境验证技巧 【免费下载链接】integration-test The repo contains test suits for system integration test 项目地址: https://gitcode.com/openeuler/integration-test 前往项目官网免费下载:…

Cursor终端插件生态避坑指南:23个实测低效插件黑名单,附3个自研轻量替代方案

Cursor终端插件生态避坑指南:23个实测低效插件黑名单,附3个自研轻量替代方案

2026/7/17 0:00:57

更多请点击: https://intelliparadigm.com 第一章:Cursor终端插件生态避坑指南概览 Cursor 作为基于 VS Code 内核构建的 AI 原生编辑器,其终端插件生态虽活跃,但存在兼容性断层、权限策略突变与调试链路断裂等典型风险。开发者常…

ChatGPT写作提示词效率革命:单条提示词响应质量提升3.8倍的关键变量(附可复用提示词矩阵表)

ChatGPT写作提示词效率革命:单条提示词响应质量提升3.8倍的关键变量(附可复用提示词矩阵表)

2026/7/17 0:00:57

更多请点击: https://codechina.net 第一章:ChatGPT写作提示词效率革命:单条提示词响应质量提升3.8倍的关键变量(附可复用提示词矩阵表) 提示词工程已从经验试错迈入变量驱动的科学阶段。实证研究表明,影响…

DeepSeek V4替换Codex底座模型的实践与优化

DeepSeek V4替换Codex底座模型的实践与优化

2026/7/17 0:00:57

1. 为什么选择用DeepSeek V4替换Codex的底座模型去年我在开发一个智能代码补全工具时,发现Codex的默认底座模型在复杂业务逻辑场景下表现不尽如人意。经过多次测试对比,DeepSeek V4在以下几个关键指标上展现出明显优势:代码补全准确率&#x…