jbstjohn:
When reading in, and processing, you don't allow any cells to be set in row/col 0 or row/col MAXROW+1, despite having allocated room for them. I understand for internal calculation needing the border, but it seems strange to me to restrict the input that way.
If you allowed them to be set, they would never be unset. Those values are not processed, and if your program did process them, it would ruin the whole reason to have a border since the code would have to check before it could index into the neighbor cells when processing those cells.
Mark