Можно ли записать на диск массив с помощью функции ac fwrite
?Из документации Cython Memory View я понимаю, что «они могут обрабатывать массивы C», но я не вижу явных примеров таких.
Вот что я пытаюсь:
cdef FILE *fptr
fptr = fopen("data.dat", "w")
cdef double[:] array = numpy.array([.5, 1.5, 2.5, -9, 0.0, 5])
fwrite(array, sizeof(double), array.size, fptr)
НоЯ получаю следующую ошибку компиляции:
Error compiling Cython file:
------------------------------------------------------------
...
def write_values(file_path):
"""Tracer code to write values to a C file."""
cdef FILE *fptr
fptr = fopen("data.dat", "w")
cdef double[:] array = numpy.array([.5, 1.5, 2.5, -9, 0.0, 5])
fwrite(array, sizeof(double), array.size, fptr)
^
------------------------------------------------------------
write_with_c.pyx:23:11: Cannot assign type 'double[:]' to 'const void *'
Возможно ли это сделать?