欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

利用ctypes获取numpy数组的指针方法

程序员文章站 2022-06-06 21:02:36
如下所示: import numpy as np from ctypes import * a = np.asarray(range(16), dtype...

如下所示:

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数组的指针方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。