C++スコーラ

値を返さない関数

最終更新:

cschola

- view
管理者のみ編集可

値を返さない関数

関数を作っているとなにも値を返さない(return のいらない)関数を作ることがあります。
この場合関数の型は void になります。 void とは「空っぽの」とか「何もない」という意味です。
さらに引数が必要ない場合は引数も void になります。
// 整数値を2つ入力して表示する関数 
void InOutSum(void) {
	printf("整数値を二つ入力してください。\n");

	int a = 0;
	int b = 0;

	scanf_s("%d%d",&a,&b);

	printf("合計値は%dです。\n",a + b);
}

int main(){

	InOutSum();

	return 0;
}
普段 main() の戻り値として return 0; と書いています。
この return 0; は Windows などの OS に正常終了であると知らせています。
かってに消したり、違うことを書くと環境によっては異常動作を起こす可能性があります。

因みに、引数の void は省略することができます。
// 整数値を2つ入力して表示する関数 
void InOutSum() {
	printf("整数値を二つ入力してください。\n");

	int a = 0;
	int b = 0;

	scanf_s("%d%d",&a,&b);

	printf("合計値は%dです。\n",a + b);
}

練習問題

 次のような関数とそれを使ったプログラムを作ってください。
第1問
 縦と横の二つの引数をとり、それに合わせた四角形を*で表示するRectAngle関数。
 RectAngleを使い、ユーザーから入力された二つの数から四角形を表示する。
例 2 3 と入力された場合
 ***
 ***
目安箱バナー