Nadal piszę na interfejsie Pythona dla mojego kodu c z ctypes. Dzisiaj zastąpiłem funkcję czytania pliku wersją pythona, która została zaprogramowana przez kogoś innego usind NumPy. "Stara" wersja c została wywołana z byref (p_data) podczas p_data = PFloat() (patrz poniżej). Główna funkcja przyjmuje p_data.Jak korzystać z tablicy NumPy z ctypami?
Old odczytu pliku:
p_data=POINTER(c_float)
foo.read(filename,byref(p_data))
result=foo.pymain(p_data)
Pyton funkcja odczytu plików z drugiej strony zwraca tablicę NumPy. Moje pytanie brzmi teraz:
Jak przekonwertować tablicę NumPy na POINTER (c_float)?
google ale tylko znaleźć na odwrót: C arrays through ctypes accessed as NumPy arrays i rzeczy nie rozumiałem: C-Types Foreign Function Interface (numpy.ctypeslib)
[aktualizacja] skorygować błąd w kodzie np
Dzięki! To było naprawdę pomocne! –