teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

C#のコード追記

2017/12/06 13:49

投稿

退会済みユーザー
answer CHANGED
@@ -32,4 +32,36 @@
32
32
  ret ==> [0, 0, 24, 40]
33
33
 
34
34
  jshell>
35
+ ```
36
+ ---
37
+ 追記:
38
+
39
+ すみません、Javaで回答してしまいました。
40
+ 同様の結果をC#で得るには下記でしょうか。
41
+
42
+ ```C#
43
+ using System;
44
+ using System.Collections.Generic;
45
+
46
+ public class Test
47
+ {
48
+ public static void Main()
49
+ {
50
+ byte[] bytes = {0, 0, 24, 40};
51
+ int num = 0;
52
+ for (int i = 0; i < bytes.Length; i++)
53
+ {
54
+ num = (num << 8) + bytes[i];
55
+ }
56
+ Console.WriteLine(num);
57
+ var ret = new List<byte>();
58
+ for (int i = 0; i < 4; i++)
59
+ {
60
+ ret.Add((byte)num);
61
+ num = num >> 8;
62
+ }
63
+ ret.Reverse();
64
+ Console.WriteLine("[" + string.Join(", ", ret.ToArray()) + "]");
65
+ }
66
+ }
35
67
  ```