Morjesta! Seuraavan koodin pitäisi tulostaa for-silmukan avulla kymmenen neliötä näytölle vierekkäin, kuitenkin se tulostaa vain yhden neliön. missähän vika?
#include <SDL/SDL.h> void PiirraNelio(SDL_Surface *naytto, int neliox, int nelioy, int neliow, int nelioh); int main(int argc, char *argv[]) { if(SDL_Init(SDL_INIT_VIDEO) < 0) { fprintf(stderr, "SDL:n alustus ei onnistunut: ", SDL_GetError()); return 0; } SDL_Surface *naytto; naytto = SDL_SetVideoMode(1024, 768, 32, SDL_HWSURFACE|SDL_DOUBLEBUF); int x = 100; int y = 100; int koko = 20; int i; for(i = 0; i < 10; i++); { PiirraNelio(naytto, x, y, koko, koko); SDL_Flip(naytto); x += koko; } SDL_Delay(2000); SDL_FreeSurface(naytto); SDL_Quit(); return 0; } void PiirraNelio(SDL_Surface *naytto, int neliox, int nelioy, int neliow, int nelioh) { SDL_Rect alue; alue.x = neliox; alue.y = nelioy; alue.w = neliow; alue.h = nelioh; SDL_FillRect(naytto, &alue, 0xFFFFFF); }
Poista ylimääräinen puolipiste riviltä 20.
no voi kehveli miksen tuota huomannut ihmettelin pitkään missä vika enkä nähnyt sitä.. no kiitoksia.
Aihe on jo aika vanha, joten et voi enää vastata siihen.