質問編集履歴

2

詳細の追記

2021/04/12 23:48

投稿

lovebeer
lovebeer

スコア1

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,8 @@
1
1
  .NET(C#)で作成されたライブラリの関数を呼び出すのに参照渡しした配列の扱い方が分かりません。
2
2
 
3
- 戻ってきたSystem.byte型の配列をPython側で使用するにはどうすればいいでしょうか?
3
+ 戻ってきたSystem.byte型の配列をPython側でint16型の配列として使用するにはどうすればいいでしょうか?
4
+
5
+ .NETの呼び出しはclrを使用しています。
4
6
 
5
7
 
6
8
 
@@ -16,7 +18,7 @@
16
18
 
17
19
  {
18
20
 
19
- public int testroc(ref byte [] bArray)
21
+ public int testroc1(ref byte [] bArray)
20
22
 
21
23
  {
22
24
 
@@ -38,6 +40,28 @@
38
40
 
39
41
  }
40
42
 
43
+ public int testroc1(ref short [] wArray)
44
+
45
+ {
46
+
47
+ // 配列に代入している値は適当
48
+
49
+ wArray[0] = 0;
50
+
51
+ wArray[1] = 1;
52
+
53
+
54
+
55
+
56
+
57
+ wArray[999] = 10;
58
+
59
+
60
+
61
+ return 1;
62
+
63
+ }
64
+
41
65
  }
42
66
 
43
67
  ```
@@ -46,13 +70,29 @@
46
70
 
47
71
  ```Python
48
72
 
49
- test = testClass()
73
+ import clr
50
-
51
- bArray = [255] * (1000)
52
74
 
53
75
 
54
76
 
77
+ test = testClass()
78
+
79
+ bArray = [255] * (1000)
80
+
81
+
82
+
55
- ret = test.testroc(bArray)
83
+ ret = test.testroc1(bArray)
84
+
85
+
86
+
87
+ #参照渡ししたbArray配列の内容をint16型の配列wArrayに変換
88
+
89
+
90
+
91
+ ret = test.testroc1(wArray)
92
+
93
+
94
+
95
+ #wArrayに格納されているデータを解析
56
96
 
57
97
 
58
98
 
@@ -62,7 +102,7 @@
62
102
 
63
103
  ret[1]
64
104
 
65
- に参照渡しした配列があると思うのですがそれをPython 側で配列として使用する方法が分かりません。
105
+ に参照渡しした配列があると思うのですがそれをPython 側でbyte方、int16型の配列として使用する方法が分かりません。
66
106
 
67
107
  どなたかご存じの方、回答いただけると幸いです。
68
108
 

1

文章の修正

2021/04/12 23:48

投稿

lovebeer
lovebeer

スコア1

test CHANGED
File without changes
test CHANGED
@@ -62,7 +62,7 @@
62
62
 
63
63
  ret[1]
64
64
 
65
- に参照渡しした配列があると思うのですが型を見るとそれをPython 側で配列として使用する方法が分かりません。
65
+ に参照渡しした配列があると思うのですがそれをPython 側で配列として使用する方法が分かりません。
66
66
 
67
67
  どなたかご存じの方、回答いただけると幸いです。
68
68