如下所示:
1
2
3
4
5
6
7
8
9
|
import numpy as np from ctypes import * a = np.asarray( range ( 16 ), dtype = np.int32).reshape([ 4 , 4 ]) if not a.flags[ 'C_CONTIGUOUS' ]: a = np.ascontiguous(a, dtype = a.dtype) # 如果不是C连续的内存,必须强制转换 a_ctypes_ptr = cast(a.ctypes.data, POINTER(c_int)) #转换为ctypes,这里转换后的可以直接利用ctypes转换为c语言中的int*,然后在c中使用 for i in range ( 16 ): print (a_ctypes_ptr[i]) |
以上这篇利用ctypes获取numpy数组的指针方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/thesby/article/details/76512629