スポンサードリンク
HOME > C言語 > 複数の戻り値を返す方法

C言語 - 複数の戻り値を返す方法

このページは、値渡しとアドレス渡しの記事を読んでおくと
理解しやすくなります。



通常、関数の戻り値は一つしか返せませんが、
引数にアドレス渡しを用いると、複数の値を返す事ができます。

#include <stdio.h>

void keisan(int a, int b, int* p1, int* p2);

void main(void) {
   int tasizan = 0;
   int hikizan = 0;

   keisan(20, 5, &tasizan, &hikizan);

   printf("足し算=%d\n", tasizan);
   printf("引き算=%d\n", hikizan);

}

void keisan(int a, int b, int* p1, int* p2) {
   *p1 = a + b;
   *p2 = a - b;
}


この例は、keisan関数で足し算と引き算をしてもらい、
表示するプログラムです。

keisan関数では、第3引数と第4引数に
計算結果を格納する変数のアドレスを渡します。
そして、関数内でそれぞれ計算し、アドレスを使って計算結果を格納しています。



スポンサードリンク







HOME

言語解説編
プログラミング用語・知識

C言語

C++言語

Java

C#

Visual Basic.NET

アプリケーション編
C言語による
コンソールプログラミング




Copyright (C) プログラミングランド All Rights Reserved