Advertisement
Guest User

Untitled

a guest
Feb 20th, 2019
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.44 KB | None | 0 0
  1. #[repr(align(16))]
  2. struct Unsigned8(u8);
  3.  
  4. struct Foo {
  5. a: Unsigned8,
  6. b: Unsigned8
  7. }
  8.  
  9.  
  10.  
  11. fn main() {
  12. let foo = Foo { a: Unsigned8(8), b: Unsigned8(9) };
  13.  
  14. let foo_ptr : *const _ = &foo;
  15. let a_ptr : *const _ = &foo.a;
  16. let b_ptr : *const _ = &foo.b;
  17.  
  18. let offset_a = (a_ptr as usize) - (foo_ptr as usize);
  19. let offset_b = (b_ptr as usize) - (foo_ptr as usize);
  20.  
  21. println!("a={}, b={}", offset_a, offset_b);
  22. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement