//不是用size,而是用一个数组区间来传递数组 #include<iostream> using namespace std; const int Arsize = 8; int sum_array(const int * begin, const int * end); int main() { using namespace std; int ar[Arsize]={1,2,4,8,16,32,64,128}; int sum = sum_array(ar, ar+Arsize); cout << "Total cookies eaten: " << sum << endl; sum = sum_array(ar, ar+3); cout << "Fisrt three eaters ate " << sum << " cookies./n" ; sum = sum_array(ar+4, ar+8); cout << "Last four eaters ate " << sum << " cookies./n"; return 0; } int sum_array (const int * begin, const int * end) { int total = 0; for(const int * pt = begin; pt != end; ++pt) total += *pt; return total; }