// arrfun2.cpp -- functions with an array argument - SEE ARRAY CHANGE!
#include <iostream>
const int ArSize = 8;
int sum_arr(int arr[], int n);        // prototype

int main()
{
    using namespace std;
    int cookies[ArSize] = {1,2,4,8,16,32,64,128};

    int sum = sum_arr(cookies, ArSize);

    for(int i=0;i<ArSize;i++) 
      cout << "Person " << i << " ate: " << cookies[i] << " cookies.\n";

    cout << "\nTotal cookies eaten: " << sum <<  "\n";

    return 0;
}

// return the sum of an integer array
int sum_arr(int arr[], int n)
{
    int total = 0;

    // NOTICE SINCE THE ARRAY IS REALLY A POINTER PASSED
    // THE ACTUAL COOKIES ARRAY WILL CHANGE!
    arr[0] = 128;

    for (int i = 0; i < n; i++)
        total = total + arr[i];

    return total; 
}

