• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Własna funkcja i struktura c++

Object Storage Arubacloud
0 głosów
584 wizyt
pytanie zadane 30 marca 2017 w C i C++ przez Programeł Gaduła (3,500 p.)

Witam 

Mam problem ze stworzeniem funkcji, która wypisze w programie zawartość struktury.

#include <iostream>

using namespace std;

float pokaz(struct x );

struct pudlo
{
    char producent[40];
    float wysokosc;
    float szerokosc;
    float dlugosc;
    float objetosc;
};

int main()
{
    pudlo paczka
    {
        "DHL",
        1.0,
        2.0,
        2.5,
        5.0
    };



    return 0;
}
float pokaz(struct x )
{
  //Funckja ktora ma wypisac dane (bez char producent)!?
  
}



Za wszelką pomoc dziękuje ;)

2 odpowiedzi

+1 głos
odpowiedź 30 marca 2017 przez mokrowski Mędrzec (155,460 p.)
wybrane 30 marca 2017 przez Programeł
 
Najlepsza
  1. Typy danych (a takim jest Pudlo) zapisuje się zwyczajowo rozpoczynając nazwę od dużej litery.
  2. Nazwa funkcji powinna mówić jakie działania podejmuje.
  3. pokazPudlo(...) nie zwraca nic więc posiada typ zwracany void
  4. Argument w funkcji nie powinien być modyfikowany, stąd przesłanie z const oraz nie chcesz wykonać jego kopii, stąd referencja.
#include <iostream>
 
using namespace std;
 
 
struct Pudlo
{
    char producent[40];
    float wysokosc;
    float szerokosc;
    float dlugosc;
    float objetosc;
};

void pokazPudlo(const Pudlo&);
 
int main()
{
    Pudlo paczka
    {
        "DHL",
        1.0,
        2.0,
        2.5,
        5.0
    };
    
    pokazPudlo(paczka);
 
 
}

void pokazPudlo(const Pudlo& pudlo )
{
    // Jak ma nie być, to usuniesz linijkę
    std::cout << "Producent: " << pudlo.producent << '\n';
    std::cout << "Wysokość: " << pudlo.wysokosc << '\n'
        << "Szerokosc: " << pudlo.szerokosc << '\n'
        << "Długość: " << pudlo.dlugosc << '\n'
        << "Objętość: " << pudlo.objetosc << '\n';
   
}

 

komentarz 30 marca 2017 przez Programeł Gaduła (3,500 p.)
Dzięki za rozwiązanie ale już zrobiłem to zadanie własnie w ten sam sposób ;D Na początku nie wiem po co zrobilem funkcje z parametrem (chyba tak to się mówi) i zrobiłem bezparametrową czyli void jak u ciebie powyżej.

Oczywiście dzięki za pomoc ;)
+1 głos
odpowiedź 30 marca 2017 przez adrian17 Ekspert (344,860 p.)

Nie tak:

float pokaz(struct x)

Tylko tak:

float pokaz(pudlo x);
float pokaz(pudlo &x); // lub
float pokaz(const pudlo &x); // lub

 

komentarz 30 marca 2017 przez Programeł Gaduła (3,500 p.)
edycja 30 marca 2017 przez Programeł
już jednak działa ! :P

Podobne pytania

–4 głosów
2 odpowiedzi 1,298 wizyt
pytanie zadane 25 kwietnia 2016 w C i C++ przez hamilkar Początkujący (370 p.)
0 głosów
1 odpowiedź 689 wizyt
pytanie zadane 17 stycznia 2019 w C i C++ przez Kaper99 Użytkownik (660 p.)
0 głosów
1 odpowiedź 81 wizyt

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...