0
을 전달,의 서명은 다음과 같습니다 내 컴퓨터에서사용하는 ctypes가 GSL 문서에 따르면 배열
from ctypes import CDLL, RTLD_GLOBAL
gslcblas = CDLL('libgslcblas.0.dylib',mode=RTLD_GLOBAL)
libgsl = CDLL('/usr/local/lib/libgsl.0.dylib')
from ctypes import c_double, c_size_t, pointer
a1 = (c_double * 5)(1, 2, 3, 4, 5)
a2 = (c_double * 5)(1, 2, 3, 6, 5)
print(libgsl.gsl_stats_correlation(a1, c_size_t(1),
a2, c_size_t(1), c_size_t(5)))
결과 :
double gsl_stats_correlation (const double data1[],
const size_t stride1,
const double data2[],
const size_t stride2,
const size_t n)
것은 내가 함께 PyPy에서 호출 할 때 지금은 1086463496이지만 실행마다 변경됩니다. 분명히 정확한 것은 아닙니다. 내가 도대체 뭘 잘못하고있는 겁니까? 함수 호출을
libgsl.gsl_stats_correlation(pointer(a1), c_size_t(1),
pointer(a2), c_size_t(1), c_size_t(5)))
으로 변경하면 똑같은 결과가 나타납니다.