#include<limits>#include <string>#include <sstream>#include <iomanip>

#include<limits>:

  • <limits> 是 C++ 用于获取数值类型取值范围 的核心头文件,核心工具是 std::numeric_limits<T> 模板类;
  • 最常用的成员是 min()(最小值 / 最小正数值)、max()(最大值),以及用于输入流清理的 std::numeric_limits<std::streamsize>::max()

#include <string>:

提供 C++ 标准的 std::string 类(代码中的 string inputStr 就是用这个类),以及字符串的各种操作(比如判断空字符串 inputStr.empty())。

如果你不包含这个头文件,编译器不认识 string 类型,会报 "未定义标识符'string'" 的错误

#include <sstream>:

提供 std::stringstream 类,实现 "字符串 ↔ 数值" 的双向转换。

  • stringToInt 函数核心是 stringstream ss(str); ss >> num,如果不包含这个头文件,编译器不认识 stringstream 类型;
  • 这个头文件是实现 "校验输入是否为纯整数" 的关键(比如区分 "2024""2024a")。

#include <iomanip>:

**<iomanip>**是 C++ 的 "输入 / 输出流格式控制" 头文件(i/o manipulators 的缩写),专门用于格式化控制台输出 / 输入的样式,比如设置小数位数、对齐方式、补零等。

相关推荐
海石1 天前
微信小程序开发01:XR-FRAME的快速上手
前端·增强现实·trae
带娃的IT创业者1 天前
Python 异步编程完全指南:从入门到精通
服务器·开发语言·python·最佳实践·asyncio·异步编程
zzb15801 天前
RAG from Scratch-优化-query
java·数据库·人工智能·后端·spring·mybatis
叶梅树1 天前
DocsJS npmjs 自动化发布复盘(Trusted Publisher)
前端·npm
一只鹿鹿鹿1 天前
信息安全等级保护安全建设防护解决方案(总体资料)
运维·开发语言·数据库·面试·职场和发展
喵叔哟1 天前
9. 【Blazor全栈开发实战指南】--Blazor调用JavaScript
开发语言·javascript·udp
wuqingshun3141591 天前
如何停止一个正在退出的线程
java·开发语言·jvm
我命由我123451 天前
Element Plus - Form 的 resetField 方法观察记录
开发语言·前端·javascript·vue.js·html·html5·js
朱包林1 天前
Python基础
linux·开发语言·ide·python·visualstudio·github·visual studio
卷福同学1 天前
QClaw内测体验,能用微信指挥AI干活了
人工智能·算法·ai编程