It depends on the bank. According to the Uniform Commercial Code, a bank is not obliged to pay a cheque after six months, but may do so if it wants to.
§ 4-404. BANK NOT OBLIGED TO PAY CHECK MORE THAN SIX MONTHS OLD.
A bank is under no obligation to a customer having a checking account to pay a check, other than a certified check, which is presented more than six months after its date, but it may charge its customer's account for a payment made thereafter in good faith.
Official link to UCC 4-404