C言語 return文の使い方

この記事のポイント

return文について、基礎から実践まで詳しく解説していきます。プログラミング初心者の方でも理解できるよう、具体的なコード例を交えながら説明を進めていきます。

  • 関数から値を返すために使用される制御文
  • 関数の実行を終了させる役割を持つ構文
  • さまざまなデータ型の値を返却できる機能

これらのポイントを押さえることで、C言語プログラミングにおける関数の使い方が格段に向上するでしょう。

目次

return文とは?

return文は、関数から値を返すために使用される制御文です。関数内でreturn文が実行されると、その時点で関数の処理が終了し、指定した値が呼び出し元に返されます。

return文は関数型に応じてさまざまなデータ型の値を返すことができ、void型の関数では値を返さずに処理を終了させる役割を果たします。また、return文は関数内のどの位置にも記述でき、複数のreturn文を持つ関数も作成可能です。これにより、条件に応じて異なる値を返したり、エラー時に早期に処理を終了させたりすることができます。

【関連】
C言語をもっと詳しく学ぶならpaizaラーニング

基本構文

return文の基本的な書き方について、具体的なコード例を用いて説明します。最も単純な形では「return 値;」という形で記述し、関数の戻り値として任意の値を指定できます。

#include <stdio.h> int add_numbers(int a, int b) { return a + b; } int main(void) { int result = add_numbers(3, 7); printf("合計: %d\n", result); return 0; }

出力結果

合計: 10

void型の関数では、値を返さずに処理を終了させるために「return;」と記述します。

#include <stdio.h> void print_message(void) { printf("こんにちは\n"); return; } int main(void) { print_message(); return 0; }

出力結果

こんにちは

実用例

ここからは、return文を使った実践的なコード例を紹介します。各例では、実際のプログラミングでよく使われるパターンを取り上げ、return文がどのように活用されるかを詳しく解説していきます。これらのサンプルコードを通じて、return文の使い方をより具体的に理解できるでしょう。それぞれのコードには実行結果も示しているので、動作を確認しながら学習を進められます。

計算結果を返す

円の面積を計算する例です。半径を引数として受け取り、計算結果をdouble型で返します。

#include <stdio.h> double calculate_circle_area(double radius) { const double PI = 3.14159; return PI * radius * radius; } int main(void) { double area = calculate_circle_area(3.0); printf("面積: %.2f\n", area); return 0; }

出力結果

面積: 28.27

条件判定を行う

整数が偶数かどうかを判定する例です。if文を使って、与えられた整数によって異なる値を返します。

#include <stdio.h> int is_even(int number) { if (number % 2 == 0) { return 1; } return 0; } int main(void) { int result = is_even(6); printf("%d\n", result); return 0; }

出力結果

1

配列処理を行う

配列内の最大値を見つけて返す例です。for文によるループ処理とreturn文を組み合わせた実用的な例です。

#include <stdio.h> int find_max_value(int arr[], int size) { int max = arr[0]; for (int i = 1; i < size; i++) { if (arr[i] > max) { max = arr[i]; } } return max; } int main(void) { int numbers[] = {3, 7, 2, 9, 5}; int max = find_max_value(numbers, 5); printf("最大値: %d\n", max); return 0; }

出力結果

最大値: 9

文字列操作を行う

文字列の長さをカウントして返す例です。ポインタを使った文字列操作の基本的なパターンを示しています。

#include <stdio.h> int get_string_length(char *str) { int length = 0; while (str[length] != '\0') { length++; } return length; } int main(void) { char text[] = "Cat"; int len = get_string_length(text); printf("Length: %d\n", len); return 0; }

出力結果

Length: 3

エラー処理

除算を行う関数で、ゼロ除算エラーをチェックします。エラー時に特定の値を返すパターンの例です。

#include <stdio.h> double divide_numbers(double a, double b) { if (b == 0.0) { return -1.0; } return a / b; } int main(void) { double result1 = divide_numbers(10.0, 2.0); double result2 = divide_numbers(10.0, 0.0); printf("10 / 2 = %.2f\n", result1); printf("10 / 0 = %.2f\n", result2); return 0; }

出力結果

10 / 2 = 5.00
10 / 0 = -1.00

まとめ

return文は、プログラミングにおいて欠かせない制御構造のひとつです。関数から値を返したり、処理を終了させたりする役割を担っており、効率的なプログラム設計に寄与します。

return文の活躍する場面

  • 計算結果を呼び出し元に渡すとき
  • 条件判定の結果を返すとき
  • エラー状態を知らせるとき

重要なポイント

  • 関数の型と戻り値の型を一致させること
  • void型関数では値なしのreturn文を使うこと
  • 複数のreturn文で分岐処理が可能なこと

return文を適切に使いこなすことで、読みやすく保守性の高いプログラムが作成できます。初心者の方は、まず基本的なパターンから練習し、徐々に複雑な処理へと発展させていくことをお勧めします。関数設計においてreturn文の使い方をマスターすることは、C言語プログラミングスキル向上への確実な一歩となるでしょう。

レベルを更に上げたい方はpaizaプログラミングスキルチェックへ

  1. paizaラーニングトップ
  2. リファレンス
  3. C言語のリファレンス記事一覧
  4. C言語 return文の使い方