-
Notifications
You must be signed in to change notification settings - Fork 13
Expand file tree
/
Copy patharray.rs
More file actions
38 lines (30 loc) · 785 Bytes
/
array.rs
File metadata and controls
38 lines (30 loc) · 785 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#![allow(unused)]
fn main() {
// Array - fixed size, known at compile time
let arr: [u32; 3] = [1, 2, 3];
println!("arr[0] = {}", arr[0]);
// Write
let mut arr: [u32; 3] = [1, 2, 3];
arr[1] = 9;
// All elements = 0
let arr: [i32; 10] = [0; 10];
println!("{:?}", arr);
// Slice - size not known at compile time
let nums: [i32; 10] = [-1, 1, -2, 2, -3, 3, -4, 4, -5, 5];
// First 3
let s: &[i32] = &nums[0..3];
// Optional 0 index
let s = &nums[..3];
println!("{:?}", s);
// Middle 4
let s = &nums[3..7];
println!("{:?}", s);
// Last 3
let s = &nums[7..10];
// Optional last index
let s = &nums[7..];
println!("{:?}", s);
// All
let s = &nums[..];
println!("{:?}", s);
}