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

Rust安全之数值

文章目录

    • 数值溢出

数值溢出

编译通过,运行失败
cargo run 1

fn main() {let mut arg = std::env::args().skip(1).map(|x| x.parse::<i32>().unwrap()).next().unwrap();let m_i = i32::MAX - 1;let a = m_i + arg;println!("{:?}", a);
}
thread 'main' panicked at 'attempt to add with overflow', src\bin\rssh3.rs:13:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
error: process didn't exit successfully: `target\debug\rssh3.exe 1` (exit code: 101)

编译不通过

fn main() {let m_i = i32::MAX;let a = m_i + 1;println!("{:?}", a);
}

输出

error: this arithmetic operation will overflow--> src\bin\rssh3.rs:9:13|
9 |     let a = m_i + 1;|             ^^^^^^^ attempt to compute `i32::MAX + 1_i32`, which would overflow|= note: `#[deny(arithmetic_overflow)]` on by defaultwarning: `datetime-util` (bin "rssh3") generated 4 warnings
error: could not compile `datetime-util` due to previous error; 4 warnings emitted
http://www.lryc.cn/news/139911.html

相关文章:

  • 4种方法实现html 页面内锚点定位及跳转
  • gitlab配置备忘
  • 基于Centos搭建k8s仓库
  • 浅谈泛在电力物联网发展形态与技术挑战
  • git reset --soft 用法
  • 哪些测试仪器可以用于检测静电中和设备的性能
  • 浅析 GlusterFS 与 JuiceFS 的架构异同
  • ARM开发,stm32mp157a-A7核PWM实验(驱动蜂鸣器,风扇,马达工作)
  • 群狼调研(长沙眼镜店神秘顾客)|消费者需求研究方案
  • 电脑入门:宽带路由器常见故障排除技巧
  • 基于云原生网关的流量防护实践
  • 开源与云计算:新的合作模式
  • 前端需要理解的跨平台知识
  • 《基于 Vue 组件库 的 Webpack5 配置》3.将 CSS 提取到单独的文件
  • 2023CCF图形学启明星计划夏令营感想记录
  • 如何解决“缺失msvcp110.dll”错误,msvcp110.dll丢失要怎样才能修复
  • 激活函数总结(二十):激活函数补充(SQNL、PLU)
  • Docker【部署 04】Docker Compose下载安装及实例Milvus Docker compose(CPU)使用说明分享
  • 23种设计模式-7种结构模式
  • 大数据Flink(六十七):SQL Table 简介及运行环境
  • WPF使用依赖注入
  • 玩转科技|了解AI平台桌面客户端—ChatBox
  • visual studio 2022.NET Core 3.1 未显示在目标框架下拉列表中
  • 人工智能项目集合推荐(数据集 模型训练 C++和Android部署)
  • C# 服务HTTPS 对 请求被中止: 未能创建 SSL/TLS 安全通道报错
  • 二级MySQL(七)——表格数据修改
  • 【日常积累】Linux下sftp搭建
  • 【深入浅出C#】章节 9: C#高级主题:多线程编程和并发处理
  • Windows Server服务器安全加固基线配置
  • 基于NXP i.MX 6ULL核心板的物联网模块开发案例(4)