2013-04-10 5 views
4

в этой части моего кода при компиляции программы. это шоу ошибки: «аргумент типа„ИНТ“несовместимо с параметром типа„сопзИте пустоту *“я объявляю переменный следующим образом:.Ошибка: аргумент типа «int» несовместим с параметром типа «const void *»

int *dev_matrix, *dev_array, *dev_array_length; 
int array_length=1; 
cudaMalloc((void**)&dev_array_length, 1*sizeof(int)); 
cudaMemcpy(dev_array_length, array_length, 1*sizeof(int), cudaMemcpyHostToDevice); 

ответ

7

Второй аргумент cudaMemcpy() неправильно Это предназначается, чтобы быть. . указатель (const void*) и вы поставляя int

вы имели в виду, чтобы написать:

cudaMemcpy(dev_array_length, &array_length, 1*sizeof(int), cudaMemcpyHostToDevice); 
          ^