Когда я компилирую код ниже, gcc не сообщает об ошибках:
#include <stdio.h>
#include <gsl/gsl_vector.h>
#include <gsl/gsl_blas.h>
int main (void)
{
int i;
gsl_vector * v = gsl_vector_alloc (3);
for (i = 0; i < 3; i++)
{
gsl_vector_set (v, i, 1);
}
gsl_vector * v2 = gsl_vector_alloc (3);
for (i = 0; i < 3; i++)
{
gsl_vector_set (v2, i, 2);
}
double *result ;
gsl_blas_ddot(v, v2, result) ;
printf("result of dot product is %f\n", *result );
return 0;
}
Но я получаю ошибку времени выполнения:
Segmentation fault (core dumped)
ссылается на вызов gsl_blas_ddot.Я не могу понять, в чем проблема.Векторы v и v2 расположены правильно.