Считать новые данные в параметры указателя внутри функции? - PullRequest
0 голосов
/ 11 ноября 2011

Я создаю программу, которая позволяет пользователям вводить данные планеты.В этой функции у меня должно быть 3 параметра указателя, чтобы я мог передать адрес переменных, объявленных вне функции, указателям, а затем использовать scanf для чтения данных по этим адресам (в форме параметров указателя).

Программа компилируется, но происходит сбой при вводе данных новой планеты: (

void new_planet_data(double *temp_mass, double *temp_radius,    double * temp_density)
{


    printf("Enter the planet's mass (earth = 5.9736e24): ");
    scanf("%lf",&temp_mass);

    printf("Enter the planet's radius (earth = 6.37101e6): ");
    scanf("%lf",&temp_radius);

    printf("Enter the air density (earth = 1.2):");
    scanf("%lf",&temp_density);

    planet_mass = *temp_mass;

    planet_radius = *temp_radius;

    planet_density = *temp_density;


}

1 Ответ

1 голос
/ 11 ноября 2011

Переменные temp_x уже являются указателями, поэтому нет необходимости использовать оператор & в scanf.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...