文章目录
数值溢出
编译通过,运行失败
cargo run 1
fnmain(){letmut 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)
编译不通过
fnmain(){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 default
warning: `datetime-util`(bin "rssh3") generated 4 warnings
error: could not compile `datetime-util` due to previous error;4 warnings emitted
本文转载自: https://blog.csdn.net/rustwei/article/details/132490141
版权归原作者 大怀特 所有, 如有侵权,请联系我们删除。
版权归原作者 大怀特 所有, 如有侵权,请联系我们删除。