Long String cannot println whith gsm.readSMS

Hi. I have 2 example of code,.

#include "SIM900.h"
#include <SoftwareSerial.h>
#include "sms.h"
SMSGSM sms;

int numdata;
boolean started=false;
char smsbuffer[200];
char n[20];

void setup() 
{
 Serial.begin(9600); 
 
  Serial.println("GSM Shield testing.");
  //Start configuration of shield with baudrate.
  //For http uses is raccomanded to use 4800 or slower.
  if (gsm.begin(2400)){
    Serial.println("\nstatus=READY");
    started=true;  
  }
  else Serial.println("\nstatus=IDLE");
  
   if(started){
    //Enable this two lines if you want to send an SMS.
    //if (sms.SendSMS("3471234567", "Arduino SMS"))
      //Serial.println("\nSMS sent OK");
  }
  
};

String sdsd = "eHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHh";
  

void loop() 
{
  Serial.println("sdsd:");
  Serial.println(sdsd);
  
  if(started){
    //Read if there are messages on SIM card and print them.
    /*if(gsm.readSMS(smsbuffer, 200, n, 20))
    {
      Serial.println(n);
     Serial.println(smsbuffer);
    }*/

  }
  
 delay (1000); 
};

I have a result:
sdsd:
eHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHh

and

#include "SIM900.h"
#include <SoftwareSerial.h>
//If not used, is better to exclude the HTTP library,
//for RAM saving.
//If your sketch reboots itself proprably you have finished,
//your memory available.
//#include "inetGSM.h"

//If you want to use the Arduino functions to manage SMS, uncomment the lines below.
#include "sms.h"
SMSGSM sms;

//To change pins for Software Serial, use the two lines in GSM.cpp.

//GSM Shield for Arduino
//www.open-electronics.org
//this code is based on the example of Arduino Labs.

//Simple sketch to send and receive SMS.

int numdata;
boolean started=false;
char smsbuffer[200];
char n[20];

void setup() 
{
  //Serial connection.
  Serial.begin(9600);
  Serial.println("GSM Shield testing.");
  //Start configuration of shield with baudrate.
  //For http uses is raccomanded to use 4800 or slower.
  if (gsm.begin(2400)){
    Serial.println("\nstatus=READY");
    started=true;  
  }
  else Serial.println("\nstatus=IDLE");
  
  
  
  if(started){
    //Enable this two lines if you want to send an SMS.
    //if (sms.SendSMS("3471234567", "Arduino SMS"))
      //Serial.println("\nSMS sent OK");
  }

};

String sdsd = "eHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHheHh";
  

void loop() 
{
    Serial.println("sdsd:");
  Serial.println(sdsd);
  
  if(started){
    //Read if there are messages on SIM card and print them.
    if(gsm.readSMS(smsbuffer, 200, n, 20))
    {
      Serial.println(n);
      Serial.println(smsbuffer);
    }
    delay(1000);
  }
};

i have only
sdsd:

and if i change String sdsd to 100 symbol it's println fine.

Maybe someone know what can be a problem?... Please help! Thanks!

Maybe someone know what can be a problem?

Are you using an Arduino with 4 terrabytes of memory? If so, please tell us the chip number. If not, quit pissing away resources on the String class.

Thank's for answer! i use Arduino UNO, Atmega 328