How to return array from function in C++

2 Answers

0 votes
#include <iostream>

int *MultiplyByTwo(int arr[], int size){
    for (int i = 0; i < size; i++) {
        arr[i] *= 2;
    }
    return arr;
}

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    int size = sizeof arr/sizeof arr[0];
    
    int *p = MultiplyByTwo(arr, size);

    for (int i = 0; i < size; ++i) {
        std::cout << p[i] << " ";
    }
        
    return 0;
}




/*
run:

2 4 6 8 10 

*/

 



answered May 15, 2021 by avibootz
0 votes
#include <iostream>

int *getArray() {
   static int  arr[5];

   srand(time(NULL));
   for (int i = 0; i < 5; ++i) {
      arr[i] = rand() % 100;
   }

   return arr;
}

int main() {
   int *p;

   p = getArray();
   
   for (int i = 0; i < 5; i++) {
      std::cout << "*(p + " << i << ") : " << *(p + i) << "\n";
   }
        
    return 0;
}




/*
run:

*(p + 0) : 46
*(p + 1) : 56
*(p + 2) : 89
*(p + 3) : 6
*(p + 4) : 50

*/

 



answered May 15, 2021 by avibootz

Related questions

1 answer 106 views
1 answer 125 views
3 answers 211 views
211 views asked May 14, 2021 by avibootz
3 answers 249 views
1 answer 132 views
1 answer 137 views
1 answer 124 views
124 views asked May 10, 2021 by avibootz
...