Rust functions: Difference between revisions

From wikinotes
No edit summary
No edit summary
Line 1: Line 1:
= Function Signatures =
<blockquote>
<syntaxhighlight lang="rust">
fn main() {
    println!("hi");
}
</syntaxhighlight>
</blockquote><!-- Function Signatures -->
= Expressions vs Statements =
= Expressions vs Statements =
<blockquote>
<blockquote>
Line 29: Line 20:
</syntaxhighlight>
</syntaxhighlight>
</blockquote><!-- Expressions vs Statements -->
</blockquote><!-- Expressions vs Statements -->
= Function Signatures =
<blockquote>
<syntaxhighlight lang="rust">
fn main() {            // returns void
    println!("hi");
}
fn main() i32 {        // returns 123
    123  // <-- no semicolon
}
fn main(num: u8) {    // param type
    println!("{num}");
}
</syntaxhighlight>
</blockquote><!-- Function Signatures -->

Revision as of 00:54, 7 February 2023

Expressions vs Statements

  • statements include actions without a return value (ends in ;)
  • expressions include actions with a return value (no ;)

statement

{
    let y = 1;
    y += 1;
} // no return val

expression

let x = {
    let y = 1;
    y += 1       // <-- no semicolon
} // returns 2

Function Signatures

fn main() {            // returns void
    println!("hi");
}

fn main() i32 {        // returns 123
    123  // <-- no semicolon
}

fn main(num: u8) {     // param type
    println!("{num}");
}