HiveBrain v1.2.0
Get Started
← Back to all entries
snippetrustCritical

How to raise a number to a power?

Submitted by: @import:stackoverflow-api··
0
Viewed 0 times
raisehowpowernumber

Problem

I was trying to raise an integer to a power using the caret operator (^), but I am getting surprising results, e.g.:

assert_eq!(2^10, 8);


How can I perform exponentiation in Rust?

Solution

Rust provides exponentiation via methods pow and checked_pow. The latter
guards against overflows. Thus, to raise 2 to the power of 10, do:

let base: i32 = 2; // an explicit type is required
assert_eq!(base.pow(10), 1024);


The caret operator ^ is not used for exponentiation, it's the bitwise XOR
operator.

Code Snippets

let base: i32 = 2; // an explicit type is required
assert_eq!(base.pow(10), 1024);

Context

Stack Overflow Q#51208703, score: 198

Revisions (0)

No revisions yet.