나는 아직도 ctypes를 가진 나의 c 코드를위한 파이썬 인터페이스에 글을 쓰고있다. 오늘은 파이썬 버전으로 파일 읽기 기능을 대체했습니다.이 기능은 타인이 NumPy를 프로그래밍 한 프로그램입니다. 'old'C 버전은 byref (p_data)와 p_data = PFloat() (아래 참조)를 사용하여 호출되었습니다. main 함수는 p_data를 취합니다.NumPy 배열을 ctypes와 함께 사용하는 방법?
오래된 파일 읽기 :
이p_data=POINTER(c_float)
foo.read(filename,byref(p_data))
result=foo.pymain(p_data)
반면에 파이썬 파일 읽기 기능이 NumPy와 배열을 반환합니다. 내 질문은 지금 :
어떻게 NumPy 배열을 POINTER (c_float)로 변환합니까?
검색 좀하지만 주변에 다른 방법을 발견 : C arrays through ctypes accessed as NumPy arrays 사물이 이해가되지 않았다 C-Types Foreign Function Interface (numpy.ctypeslib)
이 이 예제 코드에서 실수를 수정 [업데이트]
감사합니다. 이것은 정말로 도움이되었다! –