回答編集履歴

3

サンプルプログラムのbの型をu8からu32に変更しました

2019/03/01 00:07

投稿

tatsuya6502
tatsuya6502

スコア2035

test CHANGED
@@ -20,9 +20,9 @@
20
20
 
21
21
 
22
22
 
23
- let b = 12u8; // u8
23
+ let b = 12u32; // u32
24
24
 
25
- let b_ref = &b; // &u8
25
+ let b_ref = &b; // &u32
26
26
 
27
27
 
28
28
 
@@ -58,9 +58,9 @@
58
58
 
59
59
  println!(
60
60
 
61
- "b: u8 {} {:p} {:?}",
61
+ "b: u32 {} {:p} {:?}",
62
62
 
63
- size_of::<u8>(),
63
+ size_of::<u32>(),
64
64
 
65
65
  &b,
66
66
 
@@ -70,9 +70,9 @@
70
70
 
71
71
  println!(
72
72
 
73
- "b_ref: &u8 {} {:p} 0x{:x}",
73
+ "b_ref: &u32 {} {:p} 0x{:x}",
74
74
 
75
- size_of::<&u8>(),
75
+ size_of::<&u32>(),
76
76
 
77
77
  &b_ref,
78
78
 
@@ -116,13 +116,13 @@
116
116
 
117
117
  --------------- ---- -------------- ---------------
118
118
 
119
- a: [u8; 4] 4 0x7ffeed9e2b88 [34, 1, 0, 0]
119
+ a: [u8; 4] 4 0x7ffeedd64b88 [34, 1, 0, 0]
120
120
 
121
- a_ref: &[u8; 4] 8 0x7ffeed9e2b98 0x7ffeed9e2b88
121
+ a_ref: &[u8; 4] 8 0x7ffeedd64b98 0x7ffeedd64b88
122
122
 
123
- b: u8 1 0x7ffeed9e2ba7 12
123
+ b: u32 4 0x7ffeedd64ba4 12
124
124
 
125
- b_ref: &u8 8 0x7ffeed9e2ba8 0x7ffeed9e2ba7
125
+ b_ref: &u32 8 0x7ffeedd64ba8 0x7ffeedd64ba4
126
126
 
127
127
  ```
128
128
 

2

誤字を修正しました

2019/03/01 00:07

投稿

tatsuya6502
tatsuya6502

スコア2035

test CHANGED
@@ -128,4 +128,4 @@
128
128
 
129
129
 
130
130
 
131
- 参照`a_ref`はそのサイズは8バイト(64ビット)で、値として`a`が置かれているアドレスを持っていることが確認できます。
131
+ 参照`a_ref`はそのサイズは8バイト(64ビット)で、値として`a`が置かれているアドレスを持っていることが確認できます。

1

説明を少し追加しました

2019/02/28 23:06

投稿

tatsuya6502
tatsuya6502

スコア2035

test CHANGED
@@ -1,4 +1,4 @@
1
- 参照(`&`)はポインタの一種で、その値は、それが指しているデータのメモリ上のアドレスになります。アドレスは64ビットOSでは64ビットになります。
1
+ 参照(`&`)はポインタの一種で、その値は、それが指しているデータのメモリ上のアドレスす。アドレスは64ビットOSでは8バイですので、参照の値のサイズも8バイトになります。
2
2
 
3
3
 
4
4