fork download
  1. #include <iostream>
  2. #include <string>
  3. using namespace std;
  4.  
  5.  
  6. // dziala na dynamicznych tablicach tylko.
  7. template<typename T>
  8. T* my_realloc(T* src, size_t old_size, size_t new_size) {
  9. if(!new_size) {
  10. return nullptr;
  11. }
  12.  
  13. T* temp_array = new T[new_size];
  14. for(size_t i = 0; i < old_size; ++i) {
  15. temp_array[i] = src[i];
  16. }
  17.  
  18. delete[] src;
  19. return temp_array;
  20. }
  21.  
  22. template<typename T>
  23. void fill_array(T* array, T elem, size_t begin, size_t end) {
  24. for(size_t i = begin; i < end; ++i) {
  25. array[i] = elem;
  26. }
  27. }
  28.  
  29. template<typename T>
  30. void display_array(T* array, size_t size, string sep = ",") {
  31. for(size_t i = 0; i < size; ++i) {
  32. cout << array[i] << sep;
  33. }
  34. }
  35.  
  36. int main() {
  37. int* array = new int[10];
  38. fill_array<int>(array, 10, 0, 10);
  39. array = my_realloc<int>(array, 10, 20);
  40. fill_array<int>(array, 20, 10, 20);
  41. display_array<int>(array, 20);
  42. return 0;
  43. }
Success #stdin #stdout 0s 3472KB
stdin
Standard input is empty
stdout
10,10,10,10,10,10,10,10,10,10,20,20,20,20,20,20,20,20,20,20,