/* task10_2.cpp */
#include <cstring>
#include <iostream>

using namespace std;


char *func(char *arr) {
  int len = strlen(arr);
  char *parr = new char[len + 1];

  for (int i = 0; i < len + 1; ++i) {
    parr[i] = arr[i];
  }
  return parr;
}


void cleanup(char *parr) {
  delete[] parr;
}


void printStrAndAddr(char *arr) {
  cout << arr << "   address: " << hex << (long)arr <<endl;
}



int main(int argc, char* argv[]) {
  char *copiedArr = func("Task 10");
  printStrAndAddr(copiedArr);

  char *copiedArr2 = func(copiedArr);
  printStrAndAddr(copiedArr2);

  cleanup(copiedArr);
  cleanup(copiedArr2);
}
