#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 的缩写),专门用于格式化控制台输出 / 输入的样式,比如设置小数位数、对齐方式、补零等。

相关推荐
考虑考虑4 小时前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯5 小时前
GoF设计模式——中介者模式
java·后端·spring·设计模式
青石路9 小时前
记一次多JDK版本问题的排查,一坑套一坑,差点没爬上来
java
kyriewen9 小时前
我手写了一个 EventEmitter,面试官追问了 6 个问题——第 4 个我没答上来
前端·javascript·面试
IT_陈寒10 小时前
Java的Date类又坑了我一次,改用时间戳真香
前端·人工智能·后端
山河木马10 小时前
矩阵专题2-怎么创建视图矩阵(uViewMatrix)
javascript·webgl·计算机图形学
先吃饱再说10 小时前
判断回文字符串,从一行代码到双指针优化
算法
小林攻城狮10 小时前
使用 Transport 节流解决 Vercel AI SDK 流式渲染卡死问题
前端·react.js
前端缘梦10 小时前
告别 TS 运行时类型漏洞!Zod 完整入门实战教程(前端 / 全栈必备)
前端·react.js·全栈