Skip to content

Instantly share code, notes, and snippets.

@khirotaka
Last active May 11, 2022 12:32
Show Gist options
  • Save khirotaka/5e7e947a3dd49b25b5aa31e980b06fe0 to your computer and use it in GitHub Desktop.
Save khirotaka/5e7e947a3dd49b25b5aa31e980b06fe0 to your computer and use it in GitHub Desktop.
use std::mem;
fn main() {
let mut a: Vec<i32> = vec![1, 2, 3];
let mut b: Vec<i32> = vec![4, 5, 5];
println!("i32 size of {}", mem::size_of::<i32>());
println!("var a: {:?}", a.as_ptr());
for i in 0..a.len() {
println!("\tvar a[{}]: {:?}", i, &a[i] as *const i32);
}
println!("var b: {:?}", b.as_ptr());
for i in 0..b.len() {
println!("\tvar b[{}]: {:?}", i, &b[i] as *const i32);
}
a.append(&mut b);
for i in 0..a.len() {
println!("var a[{}] = {} - {:?}", i, &a[i], &a[i] as *const i32);
}
}
@khirotaka
Copy link
Author

khirotaka commented May 11, 2022

実行結果

i32 size of 4
var a: 0x600001464030
	var a[0]: 0x600001464030
	var a[1]: 0x600001464034
	var a[2]: 0x600001464038
var b: 0x600001464040
	var b[0]: 0x600001464040
	var b[1]: 0x600001464044
	var b[2]: 0x600001464048
var a[0] = 1 - 0x600001661140
var a[1] = 2 - 0x600001661144
var a[2] = 3 - 0x600001661148
var a[3] = 4 - 0x60000166114c
var a[4] = 5 - 0x600001661150
var a[5] = 5 - 0x600001661154

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment