Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 135 Pomógł: 0 Dołączył: 7.12.2010 Ostrzeżenie: (0%)
|
Witam nie programuję jeszcze jakoś wybitnie ale w szkole jako tako wyróżniam się i postanowiłem napisać coś trudniejszego - Pokera ale to tak mało ważne.
zastanawiam się jak wysłać z funkcji głównej całą tablicę z danymi. Oto mój kod. Funkcja sprawdz. : int sprawdz(int karta, int kolor, int lista_kart[], int lista_kolorow[]) { for(int i=1;i<10;i++) { if(karta== lista_kart[i] && kolor ==lista_kolorow[i]) { return 1; } else { return 0; } } } fragment funkcji głównej : int gracz1_karty[3]; int gracz1_kolor[3]; int karty[10]; int kolor_karty[10]; (...) do { gracz1_karty[i]=losuj_karte(); gracz1_kolor[i]=losuj_kolor(); int sprawdzenie; sprawdzenie=sprawdz(gracz1_karty[i],gracz1_kolor[i],karty,kolor_karty); (...) }while(sprawdzanie==0); teraz jak przekacać całą tablice "karty" i całą tablicy "kolor_karty" ? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 125 Pomógł: 7 Dołączył: 27.01.2010 Ostrzeżenie: (0%)
|
w C/C++ tablica jest wskaznikiem, wlasciwie jest to wskaznik na pierwszy (zerowy) element tablicy, dlatego na "tablicy" dziala arytmetyka wskaznikow, sposob ktory uzylez zadziala, np:
Kod #include <iostream> #define N 10 using namespace std; void dupa(int tab[], int rozmiar) { for (int i = 0; i < rozmiar; i++) { tab[i] = i; } } int main() { int tablica[N]; dupa(tablica, N); for (int i = 0; i < N; i++) { cout << tablica[i] << endl; } return 0; } tablica to tylko wskaznik i nie ma rozmiaru, ten musisz trzymac osobno, dlatego wygodnie jest uzywac kontenerow z STL w tym std::vector, istnieje jeszcze jeden sposob przekazania tablicy do funkcji ktory umozliwia modyfikacje tablicy poprzez "wyluskiwanie": Kod void dupa(int **ptr) { int *tablica = *ptr; } ///// int tablica[100]; dupa(&tablica); tego sie uzywa np: jak chcesz zmienic rozmiar, usunanc tablice itp Ten post edytował cepa 16.11.2012, 19:27:00 |
|
|
|
licha C++ Przekazywanie tablicy do funcji 14.11.2012, 19:31:05
gam3r słyszałeś o wskaźnikach może? ;-)
http://stackove... 14.11.2012, 19:45:02
licha tak słyszałem ale wyleciały mi z głowy. Thx zobacz... 14.11.2012, 19:51:04
zegarek84 musisz przekazać początek i koniec tablicy (koniec... 14.11.2012, 22:35:49
solid23 Skorzystaj z std::vector, tak jak polecił Ci zegar... 15.11.2012, 16:50:53
solificati Cytat(cepa @ 16.11.2012, 19:26:16 ) w... 16.11.2012, 21:03:12 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 21:53 |