C++給函數傳數組參數
阿新 • • 發佈:2017-06-11
get 繼續 數組指針 數組大小 一個 nbsp eof namespace stream
在C++中,如果要給一個函數傳入一個數組,一般都是傳入兩個參數一個數組指針和一個數組大小。
單獨傳遞一個數組或者指針進去,會導致數組不完整。
做個試驗:
#include <iostream> using namespace std; int getAverage(int arr[]); int getAverage(int arr[]) { int i; int len = (sizeof(arr) / sizeof(int)); int sum = 0; int *p = arr; for (i = 0; i < len; i++) { sum+= *p; p++; } return sum / len; } int main() { int arr[] = {1, 2, 3, 3, 4, 5}; printf("數組的平均值是: %d \n", getAverage(arr)); return 0; }
輸出:
數組的平均值是: 1 請按任意鍵繼續. . .
#include <iostream> using namespace std; int getAverage(int arr[]); int getAverage(int arr[], intlen) { int i; int sum = 0; int *p = arr; for (i = 0; i < len; i++) { sum += *p; p++; } return sum / len; } int main() { int arr[] = {1, 2, 3, 3, 4, 5}; int len = (sizeof(arr) / sizeof(int)); printf("數組的平均值是: %f \n", getAverage(arr, len));return 0; }
輸出:
數組的平均值是: 3 請按任意鍵繼續. . .
C++給函數傳數組參數