Rust functions: Difference between revisions
From wikinotes
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
= 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 valexpression
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}"); }