title: C++ Integer removes string from *char[]
body: <p>I'm trying to read in several values into my C++ program.</p>
  
  <p>When I enter in a 1 digit number (at the bottom of my code) I'm fine. </p>
  
  <p>However, if I enter a 2 digit number, like "10", the message (the second thing I enter) becomes erased. </p>
  
  <p>Here is my code:</p>
  
  <pre><code>char * args[6];
  unsigned time = 5;
  char input[5];   // for string input
  string message= "message";
  //these strings and *chars are tempary strings for the purpose of reading in data
  string temp;
  char *temp2 = " ";
  char *temp3 = "empty pointer";
  
       args[count] = "-m";
      count ++;
  
      //Prompt for the message
      cout &lt;&lt;endl&lt;&lt;"Alright, Please enter your message: "&lt;&lt;flush;
      getline(cin, message);
      cout &lt;&lt;endl&lt;&lt;endl;
      message.append("\"");
      message = "\""+message;
      //we can't use the string, so we copy it to temp3.
      strcpy(temp3, message.c_str());
      //Now we input the string into our array of arguments
      args[count] = temp3;
      count ++;
  
  
      cout &lt;&lt;"Please enter time  "&lt;&lt;flush;
      getline(cin,temp);
  
      //validate input utnil its an actual second.
      bool done = false;
      while (done == false){
          for(unsigned i = 0; i &lt; temp.length() &amp; i &lt; 5; i++){
              input[i] = temp[i];
          }
      done = CheckInteger(input, input);
          time = atoi(input);
          if (done == true &amp; time &lt; 1) {
              cout &lt;&lt;"Unable to use a number less than 1 seconds!  "&lt;&lt;endl;
              cout &lt;&lt;"Please enter the number of seconds?  "&lt;&lt;flush;
              done = false;
          }else if (done == false){
              cout &lt;&lt;"Please enter the number of seconds?  "&lt;&lt;flush;
          }else{
          break;
          }
          getline(cin,temp);
      }
      cout &lt;&lt;endl&lt;&lt;endl;
      time = atoi(input);
      //timer argument
      args[count] = "-t";
      count ++;
  
      // enter the time need to comvert from int to string.
      ostringstream convert;
      convert &lt;&lt;time;
      temp = convert.str();
      //need to convert from string to character
      strcpy(temp2, temp.c_str());
  
      args[count] = temp2;
      count ++;
  </code></pre>
  
  <p>How can I fix this?</p>