Wskaźniki. Czy kod jest poprawny?

0

Nie ogarniam wskaźników, ale napisałem funkcję (przygotowania do egzaminu) i chciałbym się Was spytać czy działa? Nie wiem jak podesłać parametry do niej, dlatego sam tego nie umiem sprawdzić.

double kopiujISumujDodatnie(double*temperatury, double*dodatnie,int ile){
    int suma  = 0;
    while(--ile>=0){    if(*temperatury>=0){
            *dodatnie=*temperatury;
            suma+=*dodatnie;
            dodatnie++;
        }
        temperatury++;
    }
    *dodatnie=0;
    return suma;
}

Przy wywołaniu

    double tem[6] = {0,4,3,-2,-5,6};
    double dod[5];
    cout<<kopiujISumujDodatnie(*tem,*dod,6); // <-----

Dostaję błąd: cannot convert double to double* for argument 1 w zaznaczonej linijce.
PS: założenia są że wszystko jest poprawnie wprowadzane.

2

Przekazuj tablicę do funkcji używając tylko jej nazwy, czyli:

kopiujISumujDodatnie(tem, dod, 6);
1

Praktycznie identyczny problem: https://4programmers.net/Forum/1371177

Temperatury masz niby jako double (aczkolwiek żadna wartość nie jest liczbą niecałkowitą), a suma jako int.

Dlaczego ten if jest tak dziwnie umiejscowiony?

0

Dzięki Wszystkim. Działać działa :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0