回答編集履歴
4
追記
test
CHANGED
@@ -12,7 +12,13 @@
|
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
-
はい。`1`は10進数
|
15
|
+
はい。`1`は10進数の1です。
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
(余談になりますが、もし`01`と書いたなら8進数で1、`0x1`と書いたなら16進数で1を表すことになります。が、まあ、何進数で表そうと、1は1です。そしてビット演算を考えるときには数値を2進表記に変えて考えたほうがイメージしやすいと思います。)
|
20
|
+
|
21
|
+
|
16
22
|
|
17
23
|
`(__int64)1`は、それを`__int64`という型にキャスト(型変換)しています。
|
18
24
|
|
3
追記
test
CHANGED
@@ -29,3 +29,9 @@
|
|
29
29
|
|
30
30
|
|
31
31
|
「キャスト」や「ビットシフト」で検索すると良いと思います。
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
(追記)
|
36
|
+
|
37
|
+
上記で使われているのはCから引き継がれた旧式のキャストですので、「C キャスト」で。
|
2
書式の改善
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
```C
|
1
|
+
```C++
|
2
2
|
|
3
3
|
unsigned __int64 mask = (__int64)1<<63;
|
4
4
|
|
1
書式の改善
test
CHANGED
@@ -1,4 +1,8 @@
|
|
1
|
+
```C
|
2
|
+
|
1
|
-
|
3
|
+
unsigned __int64 mask = (__int64)1<<63;
|
4
|
+
|
5
|
+
```
|
2
6
|
|
3
7
|
|
4
8
|
|