while(1)
{
 if( num[pos[cnt].y][pos[cnt].x] == 0 ) return;
 else{
  cnt++;
  if( cnt == max ) break;
 }
}

while文の中で,returnをするとやばいでしょうか?
どういう動作をするのでしょうか?