Во-первых, я удивлен, что это сработало - это сводится к удаче «удачи» ... поскольку переменные указывают на что-то, это сработало в первый раз, в следующий раз, возможно, вам не повезет, худшим будет код сбой!
Чтобы оценить это, попробуйте следующее:
Вызов doubleAddr
правильный, но ... вы не выделили память для переменных num
и dest
, измените параметры немного, как показано ниже.
double num = 5.0F;
double dest = 0.0F;
doubleAddr(num, &dest);
Затем измените параметры для doubleAddr
void doubleAddr(double source, double* dest)
{
*dest = source;
}
Обратите внимание, что dest
будет иметь значение '5.0', то есть параметр обращения по ссылке, который принимает адрес переменной dest
.