画面を黒と白のピクセルで塗りつぶすことになっている SDL を使用して C コードの一部に取り組んでいます... for ループを使用して画面を塗りつぶし、乱数を使用して各ピクセルが黒か白かを決定します。
しばらくは正常に機能し始めますが、画面が完全に白くなり、そのままの状態になるまで、白いピクセルが徐々に表示され始めます。ここで何が間違っているのかわかりません。コンソールに数値を num で出力すると、画面が白いときでもランダムな 1 と 0 が表示され続けるため、if else ステートメントまたは for ループのどこかに問題があると思います。
関連するコードは次のとおりです...
/*outside main program loop*/
17 int x, y, num;
18 srand(time(0));
/*inside main program loop*/
28 for(y=0;y<=480;y++) {
29 for(x=0;x<=640;x++) {
30 num = rand() % 2;
31 if(num == 0) {
32 pixelRGBA(screen, x, y, 255, 255, 255, 255);
33 }
34 else {
35 pixelRGBA(screen, x, y, 0, 0, 0, 0);
36 }
37 }
38 }
39 SDL_Flip(screen);