У меня есть быстрый вопрос, который я не могу найти в Интернете.
Я использую CUDA для некоторых операций с графическим процессором, и мне нужно немного данные, выделенные на графическом процессоре. Функция cudaMalloc выглядит следующим образом:
cudaMalloc(void** identifier, size_t space);
Достаточно просто. Итак, давайте выделим целое число.
int i = 5;
cudaMalloc((void**)&(&i), sizeof(int));
Но это ошибка ("выражение должно быть lvalue или указателем функции"). Очевидный обходной путь: объявить i
в качестве указателя для начала, а затем взять его адрес, и это отлично работает, я просто ненавижу обходные пути
Я чувствую, что на этот вопрос должен быть очевидный ответ — после все, **
, ***
и даже **********
отлично работают в C. Итак, как мне получить адрес адреса переменной "чисто"?
Спасибо!