#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 小时前
深入解析 React 中的 useCallback:原理、场景与最佳实践
前端·react.js
番茄去哪了1 小时前
python基础入门(一)
开发语言·数据库·python
HelloReader1 小时前
Nuxt 4.2 + Tauri 2 接入指南把 Vue 元框架“静态化”后装进桌面/移动端
前端
lucky67071 小时前
Laravel 9.x LTS重磅升级:六大核心改进
java·php·laravel
SuperEugene1 小时前
手把手写几种常用工具函数:深拷贝、去重、扁平化
前端·javascript·面试
人道领域1 小时前
MyBatis-Plus为何用JavaBean映射数据库表及乐观锁实战
java·开发语言·数据库
大时光1 小时前
疯狂点赞效果
前端
Felven1 小时前
B. Luntik and Subsequences
算法
加洛斯1 小时前
RabbitMQ入门篇(1):初识MQ
java·后端