Variable storage space in Sketches

Is there a limit on variable storage space in a Sketch ? I ask this because I am experiencing something funny with a Sketch that that I am coding with String array global declarations. In the following piece of code if the comment marks on the two lines below are removed, the Sketch compiles, appears to run (I have some Serial Prints which show text) but prevents LCD text display and blocks an IR receiver from receiving signals. With the two line commented out everything is OK. :-

String monthStr[13] = {" ","January","Febuary","March","April","May","June","July",
"August","September","October","November","December"};
String keyCodes[] = "FF4AB5","FF6897","FF9867","FFB04F","FF30CF","FF18E7","FF7A85","FF10EF","FF38C7",
"FF5AA5","FF42BD","FF52AD","FF22DD","FFC23D","FF629D","FFA857","FF02FD"};
//String mesDis1[4] = {"Merry Christmas &","Audrey"," "," "};
//String mesDis2[4] = {"Happy New Year","Happy Birthday"," "," "};

Obviously there are limits. Quite low, at that.
If you are using Uno, you only have 2 KB of SRAM at your disposal.

Unless you're planning on changing the names of the months whilst your program is running, it's probably best to ditch the String class altogether, and put the strings into flash memory.

Thanks Awol - I am not familiar with flash memory, can you give me more information. ??