[C++] Sposoby inicjalizacji danych (struktury, tablice)

malzon
Użytkownik
Użytkownik
Posty: 38
Rejestracja: 15 paź 2010, o 16:57
Płeć: Mężczyzna
Lokalizacja: Polska
Podziękował: 2 razy
Pomógł: 1 raz

[C++] Sposoby inicjalizacji danych (struktury, tablice)

Post autor: malzon »

Witam!

Mam problem, bo do końca nie wiem jakie są sposoby inicjalizacji danych oraz jak do nich dotrzeć (odwoływać się). Bardzo prosiłbym o wytłumaczenie.

W tablicach, wiem (chyba), że można przeprowadzić np. przez:
- deklarację tablicy na samym początku programu
- o deklarację tablicy prosimy użytkownika podczas działania programu
- jeszcze jeden sposób jest, ale nie pamiętam.

W łańcuchach, pewnie tak samo jak w tablicach, ale słyszałem też coś o jakimś wskaźniku.

Natomiast w strukturach odwołujemy się przez nazwę egzemplarza struktury.nazwa pola.
Ostatnio zmieniony 5 lut 2012, o 16:44 przez Afish, łącznie zmieniany 1 raz.
Powód: Poprawa wiadomości.
mikkuexc
Użytkownik
Użytkownik
Posty: 65
Rejestracja: 19 maja 2011, o 20:33
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 1 raz
Pomógł: 5 razy

[C++] Sposoby inicjalizacji danych (struktury, tablice)

Post autor: mikkuexc »

Jeżeli chodzi o język c++.
Tablice deklarujemy tak:
Np. tablica intów czyli liczb całkowitych

Kod: Zaznacz cały

int tab[100] // 100 elementowa tablica liczb int
Przy kompilacji musi być znana wielkość tablicy, chyba, że alokujemy ją dynamicznie.
Aby dostać się do jakiegoś elementu tablicy
np element 1:

Kod: Zaznacz cały

cout << tab[0];
Ze łańcuchami jest tak samo:

Kod: Zaznacz cały

char tabtxt[100]
Jest to tablica 100 znaków.

Co do struktur

Kod: Zaznacz cały

struct Ksiazka
{
    int numerstron;
    int rokwydania;
};
int main()
{
Ksiazka pierwsza; // obiekt struktury Ksiazka
cout << "Podaj ilosc stron";
cin >> pierwsza.numerstron;
Co do wskaźników, możemy utworzyć wskaźnik do elementu Książka:

Kod: Zaznacz cały

Ksiazka *wsk
Następnie przypisać do niego naszą pierwszą książkę:

Kod: Zaznacz cały

*wsk=&pierwsza // do wskazika przypisujemy adres w pamięci gdzie znajduje się nasza pierwsza
cout << wsk->numerstron; // za pomocą wskaźnika wypisujemy dane
ODPOWIEDZ