Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Struktura + funkcje + pobieranie danych i ich wyświetlanie

Ostatnio zmodyfikowano 2008-07-31 23:29
Autor Wiadomość
jupi161
Temat założony przez niniejszego użytkownika
Struktura + funkcje + pobieranie danych i ich wyświetlanie
» 2008-07-31 21:48:32
Mam takie pytanie jak np. stworze strukture (albo klase) i np. chce pobrać imie uzytkownika do jednej ze zmiennych w strukturze a gdy juz je pobiore i chce zrobic oddzielna funkcje ktora wyswietli to imie to za nic nie moge dojsc jak to wyswietlic ponizej zamieszczam kod:
C/C++
struct dane
{
    string imie;
};
void z_dane()
{
    dane mojeimie;
   
    cout << "Podaj imie\n";
    cin >> mojeimie.imie;
    cout << "Dzieki";
   
}
void w_dane()
{
    //I CO TUTAJ NAPISAC ZEBY MOGL ODCZYTAC IMIE??????????
}

int main()
{
    z_dane();
    w_dane();
    getch();
    return( 0 );
}
P-1114
Proxym
» 2008-07-31 22:04:46
C/C++
struct dane
{
    string imie;
};


//peniesiona deklaracja struktury z funkcji z_dane()
dane mojeimie;

void z_dane()
{
    //dane mojeimie; <- usuwamy to  i przenosimy wyżej
   
    cout << "Podaj imien";
    cin >> mojeimie.imie;
    cout << "Dzieki";
   
}
void w_dane()
{
    cout << mojejimie.imie << endl;
}

int main()
{
    z_dane();
    w_dane();
    getch();
    return( 0 ); // pierwszy raz widzę taki return ale nie wiem może działa
}

Poprawiłem kod i dodałem do komentarze.
P-1115
jupi161
Temat założony przez niniejszego użytkownika
?
» 2008-07-31 22:21:26
Po skomplikowaniu mam takie oto błędy:
error C2065: 'mojejimie' : undeclared identifier
error C2228: left of '.imie' must have class/struct/union
Sam już nie wiem o co chodzi.
P-1116
DejaVu
» 2008-07-31 22:23:59
Ja proponuję takie rozwiązanie:
C/C++
#include<iostream>
#include <conio.h>
using namespace std;
struct dane
{
    string imie;
};

void z_dane( dane & jakiesdane ) //znak referencji ważny!
{
    cout << "Podaj imie: ";
    cin >> jakiesdane.imie;
    cout << "Dzieki" << endl;
   
}

void w_dane( dane jakiesdane )
{
    cout << "To jest: " << jakiesdane.imie << endl;
}

int main()
{
    dane osoba[ 2 ];
   
    z_dane( osoba[ 0 ] );
    z_dane( osoba[ 1 ] );
   
    w_dane( osoba[ 0 ] );
    w_dane( osoba[ 1 ] );
   
    getch();
    return( 0 );
}
P-1117
Proxym
» 2008-07-31 22:37:06
Rozwiązanie na wskaźnikach jest lepsze.. ale odwołam sie do twojego poprzedniego posta .. nie wiesz czy osoba poczatkująca zna wszystko co ty użyjesz .. więc lepiej korzystać z podstawowoych rozwiązań żeby nawet laik zrozumiał.
pozdro
P-1119
jupi161
Temat założony przez niniejszego użytkownika
Działa
» 2008-07-31 22:38:28
Dzięki twój kod działa ale jest problem działa tylko w dev C++ a w visual studio oczywiście błąd.
P-1120
Proxym
» 2008-07-31 22:40:52
ponieważ VC++ ma głupią funkcje main. zamiast int przy main użyj void i bedzie ok.
P-1121
DejaVu
» 2008-07-31 23:18:43
hehe :) przynajmniej ma w czym wybierać teraz ;p
P-1123
« 1 » 2
  Strona 1 z 2 Następna strona