0

私は SDL を学んでおり、マニュアルで次のコードを見つけました。

SDL_Rect **modes;
int i;


/* Get available fullscreen/hardware modes */
modes=SDL_ListModes(NULL, SDL_FULLSCREEN|SDL_HWSURFACE);

/* Check is there are any modes available */
if(modes == (SDL_Rect **)0){
printf("No modes available!\n");
exit(-1);
}

/* Check if or resolution is restricted */
if(modes == (SDL_Rect **)-1){
 printf("All resolutions available.\n");
 }
        else{

   /* Print valid modes */
  printf("Available Modes\n");
  for(i=0;modes[i];++i)
    printf("  %d x %d\n", modes[i]->w, modes[i]->h);
}

モードは SDL_rect の配列へのポインタですが、式は次のとおりです。

(modes== (SDL_Rect **)0)

私の推論を逃れます。(SDL_Rect **)0 とはどういう意味ですか?

4

1 に答える 1

2

ヌルポインタかどうかをチェックしています。

null かどうかをチェックしているため、キャストは必要ありません。次のようになります。

if(modes == 0)

また

if(modes)
于 2012-06-18T13:27:00.410 に答える