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

質問編集履歴

2

詳細の追記

2021/04/12 23:48

投稿

lovebeer
lovebeer

スコア1

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,6 @@
1
1
  .NET(C#)で作成されたライブラリの関数を呼び出すのに参照渡しした配列の扱い方が分かりません。
2
- 戻ってきたSystem.byte型の配列をPython側で使用するにはどうすればいいでしょうか?
2
+ 戻ってきたSystem.byte型の配列をPython側でint16型の配列として使用するにはどうすればいいでしょうか?
3
+ .NETの呼び出しはclrを使用しています。
3
4
 
4
5
  ### 該当のソースコード
5
6
 
@@ -7,7 +8,7 @@
7
8
  // 該当関数の仕様
8
9
  class testClass
9
10
  {
10
- public int testroc(ref byte [] bArray)
11
+ public int testroc1(ref byte [] bArray)
11
12
  {
12
13
  // 配列に代入している値は適当
13
14
  bArray[0] = 0;
@@ -18,19 +19,38 @@
18
19
 
19
20
  return 1;
20
21
  }
22
+ public int testroc1(ref short [] wArray)
23
+ {
24
+ // 配列に代入している値は適当
25
+ wArray[0] = 0;
26
+ wArray[1] = 1;
27
+
28
+
29
+ wArray[999] = 10;
30
+
31
+ return 1;
21
32
  }
33
+ }
22
34
  ```
23
35
 
24
36
  ```Python
25
- test = testClass()
37
+ import clr
26
- bArray = [255] * (1000)
27
38
 
28
- ret = test.testroc(bArray)
39
+ test = testClass()
40
+ bArray = [255] * (1000)
29
41
 
42
+ ret = test.testroc1(bArray)
43
+
44
+ #参照渡ししたbArray配列の内容をint16型の配列wArrayに変換
45
+
46
+ ret = test.testroc1(wArray)
47
+
48
+ #wArrayに格納されているデータを解析
49
+
30
50
  ```
31
51
 
32
52
  ret[1]
33
- に参照渡しした配列があると思うのですがそれをPython 側で配列として使用する方法が分かりません。
53
+ に参照渡しした配列があると思うのですがそれをPython 側でbyte方、int16型の配列として使用する方法が分かりません。
34
54
  どなたかご存じの方、回答いただけると幸いです。
35
55
 
36
56
  よろしくお願いします。

1

文章の修正

2021/04/12 23:48

投稿

lovebeer
lovebeer

スコア1

title CHANGED
File without changes
body CHANGED
@@ -30,7 +30,7 @@
30
30
  ```
31
31
 
32
32
  ret[1]
33
- に参照渡しした配列があると思うのですが型を見るとそれをPython 側で配列として使用する方法が分かりません。
33
+ に参照渡しした配列があると思うのですがそれをPython 側で配列として使用する方法が分かりません。
34
34
  どなたかご存じの方、回答いただけると幸いです。
35
35
 
36
36
  よろしくお願いします。