while (!is_empty()) {
p = dequeue();
show_p(p);
if (p.row == MAX_ROW - 1 /* goal */
&& p.col == MAX_COL - 1)
break;
if (p.col+1 < MAX_COL /* right */
&& maze[p.row][p.col+1] == 0)
visit(p.row, p.col+1);
if (p.row+1 < MAX_ROW /* down */
&& maze[p.row+1][p.col] == 0)
...
}
今天我才偶然发现这样写的好处,当IDE进行调试时,source Level step停留在哪一步那是相当的明显