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

Jak odczytać wybraną zmienną poza funkcją

Ostatnio zmodyfikowano 2011-12-26 14:56
Autor Wiadomość
marianekA
Temat założony przez niniejszego użytkownika
Jak odczytać wybraną zmienną poza funkcją
» 2011-12-26 13:12:06
Tworzę moją pierwszą grę w C++ i Allegro.
Borykam się z problemem jak w tytule. Naczytałem o tym Return ale mi to nie działa - może powinienem zdeklarować inaczej funkcję albo nie bardzo to rozumiem.
Tak wygląda moja funkcja:
C/C++
void sprawdzenie()
{
    int d, w; // dla diagramu i wzoru
    int spr = 0;
    for( int j = 0; j < 5; ++j ) //elementy (klocki)
    {
        for( int i = 0; i < 9; ++i )
        {
            d = getpixel( screen, 40 + i * a + 40, 160 + j * a + 40 ); //kolor pola diagramu
            w = getpixel( screen, 70 + i * 20 + 10, 13 + j * 20 + 10 ); // kolor pola wzoru
            if( d == w ) ++spr;
           
        }
    }
    if( spr > 44 ) // return(spr); w tym miejscu wykazuje błąd
         voice_start( 1 );
   
};
Jak zrobić by po spełnieniu warunku z ostatniej instrukcji IF wartość zmiennej SPR dostępna była poza funkcją.
P-46286
robaczek122
» 2011-12-26 13:18:54
zamień:
void sprawdzenie()
na
int sprawdzenie()
i wtedy będziesz mógł zwracać int
P-46287
marianekA
Temat założony przez niniejszego użytkownika
» 2011-12-26 13:21:52
jeszcze jedno... jak poprawnie wstawiać kod tu na forum by było kolorowo tak jak Wasze?
P-46288
robaczek122
» 2011-12-26 13:24:42
» Kurs STCKolorowanie składni dział kursu

Można też wpisać w wyszukiwarce "kolorowanie" i mamy kilka pasujących wyników.
P-46289
marianekA
Temat założony przez niniejszego użytkownika
» 2011-12-26 13:41:08
zmieniłem funkcję na int i nie pokazuje już błędu przy return
ale jak wstawię w funkcji:
 textprintf_ex( screen, font, 270, 55, makecol( 200, 200, 200 ),520, "spr = %d ", spr);
to działa,
jak poza wywołaniem funkcji to nie działa, znaczy że coś nie tak i nie widzi zmiennej SPR poza funkcją. Co mogę jeszcze źle robić?
P-46291
waxx
» 2011-12-26 14:22:58
Nauczyc sie kodzic? :P

 textprintf_ex( screen, font, 270, 55, makecol( 200, 200, 200 ),520, "spr = %d ", sprawdzenie());
P-46294
marianekA
Temat założony przez niniejszego użytkownika
» 2011-12-26 14:56:24
Już działa, pomocna okazała się informacja od Robaczka...dzięki !
zamykam temat
P-46298
« 1 »
  Strona 1 z 1