title: Copy specific range of 2 Dimensional Char[][] Array to char * or std::string
body: <p>Assuming you read the title, here's a little example in pseudo code:  </p>
  
  <pre><code>char inputChar[5][20];
  {put data in array obviously}
  char * outputChar;
  copy(inputChar[2][7], inputChar[2][18], outputChar);
  printf("%s", outputChar);
  </code></pre>
  
  <p>or optionally (although I prefer the above version):</p>
  
  <pre><code>char inputChar[5][20];
  {put data in array obviously}
  std::string outputString;
  copy(inputChar[2][7], inputChar[2][18], outputString);
  cout outputString; //I don't know how to use std::strings with printf
  </code></pre>
  
  <p>I've tried std::copy and memcpy but I can't get it to work. The result either gives me random characters that aren't part of the string, or just results in compiler errors due to me not understanding the syntax fully.  </p>
  
  <p>EDIT:
  Here is the actual code I'm using:
  (assume for this example that storeMenu already has data assigned to it)</p>
  
  <pre><code>int line = 0
  int frame5 = 11;
  char storeMenu[9][13];
  char * temp1 = new char[12];
  char * temp2 = new char[12];
  std::copy(&amp;storeMenu[line+1][0], &amp;storeMenu[line+1][frame5-10], temp1);
  std::copy(&amp;storeMenu[line][frame5-10], &amp;storeMenu[line][12], temp2);
  </code></pre>