[C++]スラスラわかるC++ 「C++の仕様で配列は必ずのポインタ渡しになる」を知るための実験プログラム 4_12 cpp *ptr &address

chapter4.h


// 配列の平均値を返す関数のプロトタイプ宣言
double getAverage(const int *a, int length);

getAverage.cpp

double getAverage(const int *a, int length) {
  double sum;		// 合計値
  double average;	// 平均値
  int i;		// 配列の要素番号(ループカウンタ)

  // 配列の合計値を求める
  sum = 0;
  for (i = 0; i < length; i++) {
    // ポインタが指し示している要素の値を読み出し集計する
    sum += *a;

    // ポインタを更新する(次の要素を指し示す)
    a++;
  }

  // 配列の平均値を求める
  average = (double)sum / length;

  // 配列の合計値を返す
  return average;
}

list4_12.cpp

#include <iostream>
using namespace std;
#include "chapter4.h"

int main() {
  const int DATA_NUM = 10;	// 配列の要素数

  // 10人の学生のテストの得点を格納した配列
  int point[DATA_NUM] = { 85, 72, 63, 45, 100, 98, 52, 88, 74, 65 };
  double average;		// 平均値

  // 平均点を求める
  average = getAverage(point, DATA_NUM);

  // 平均点を表示する
  cout << "平均点:" << average << endl;

  return 0;
}

cd_samples4_12_pointer_address.cmd  

 g++ list4_12.cpp getAverage.cpp -o list4_12.exe


C:\samples\chapter04\4_12>cd C:\samples\chapter04\4_12\

C:\samples\chapter04\4_12>g++ list4_12.cpp getAverage.cpp -o list4_12.exe

C:\samples\chapter04\4_12>list4_12.exe
平均点:74.2

C:\samples\chapter04\4_12>cmd /k
C:\samples\chapter04\4_12>

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です