初面网初面网

运算符

算术运算符

fn main() {
  let a = 10;
  let b = 3;

  println!("a + b = {}", a + b);
  println!("a - b = {}", a - b);
  println!("a * b = {}", a * b);
  println!("a / b = {}", a / b);
  println!("a % b = {}", a % b);
}

乘方运算只能用pow(整型用)或powf(浮点型用)

fn main() {
  let a = 2.0;
  let b = 3.0;

  println!("a.pow(b) = {}", a.pow(b));
  println!("a.powf(b) = {}", a.powf(b));
}

关系(比较)运算符

fn main() {
  let a = 10;
  let b = 3;

  println!("a > b = {}", a > b);
  println!("a < b = {}", a < b);
  println!("a >= b = {}", a >= b);
  println!("a <= b = {}", a <= b);
  println!("a == b = {}", a == b);
  println!("a != b = {}", a != b);
}

逻辑运算符

fn main() {
  let a = true;
  let b = false;

  println!("a && b = {}", a && b);
  println!("a || b = {}", a || b);
  println!("!a = {}", !a);
}

位运算符

fn main() {
  let a = 10;
  let b = 3;

  println!("a & b = {}", a & b);
  println!("a | b = {}", a | b);
  println!("a ^ b = {}", a ^ b);
  println!("a << b = {}", a << b);
  println!("a >> b = {}", a >> b);
}

赋值运算符

fn main() {
  let mut a = 10;
  let b = 3;

  a += b;
  println!("a += b = {}", a);

  a -= b;
  println!("a -= b = {}", a);

  a *= b;
  println!("a *= b = {}", a);

  a /= b;
  println!("a /= b = {}", a);

  a %= b;
  println!("a %= b = {}", a);
}

其他运算符

fn main() {
  let x = 5;
  let y = x as f64;

  // 范围(不含右端)
  for i in 1..4 {
      print!("{} ", i);
  }
  println!();

  // 范围(含右端)
  for i in 1..=3 {
      print!("{} ", i);
  }
  println!();

  let a = 10;
  let b = &a; // 取引用
  println!("*b = {}", *b); // 解引用
}

更新于 2026/3/8