C言語のカスタム関数

王林
王林オリジナル
2020-05-12 13:15:406027ブラウズ

C言語のカスタム関数

#C 言語でのパラメータなし関数の定義

関数がユーザーから渡されたデータを受け取らない場合は、パラメータなしで関数を定義できます。 。以下に示すように:

dataType  functionName(){
    //body
}

dataType は戻り値の型で、int、float、char などの C 言語の任意のデータ型を指定できます。

functionName は関数名であり、識別子の一種であり、命名規則は識別子と同じです。関数名の後の括弧 ( ) は省略できません。

body は関数本体です。これは、関数が実行する必要があるコードであり、関数の主要部分です。文が 1 つだけの場合でも、関数本体は { } で囲む必要があります。

戻り値がある場合は、関数本体の return ステートメントを使用して戻ります。返されるデータのタイプは dataType と同じである必要があります。

たとえば、1 から 100 までの加算結果を計算する関数を定義します:

#include <stdio.h>

int sum(){
    int i, sum=0;
    for(i=1; i<=100; i++){
        sum+=i;
    }
    return sum;
}

int main(){
    int a = sum();
    printf("The sum is %d\n", a);
    return 0;
}

実行結果:

The sum is 5050

関数をネストした定義、メインにすることはできません。も関数定義であるため、sum は main の外側に配置する必要があります。関数は最初に定義してから使用する必要があるため、sum は main の前に配置する必要があります。

注: main は関数定義であり、関数呼び出しではありません。実行可能ファイルがメモリにロードされると、システムは main 関数から実行を開始します。つまり、システムは定義した main 関数を呼び出します。

戻り値なし関数

一部の関数は値を返す必要がないか、戻り値の型が不確実 (まれ) です。

void hello(){
    printf ("Hello,world \n");
    //没有返回值就不需要 return 语句
}

void は C 言語のキーワードで、「空の型」または「型なし」を意味し、多くの場合、return 文がないことを意味します。

C 言語でのパラメータ化された関数の定義

関数がユーザーから渡されたデータを受け取る必要がある場合は、関数を定義するときにパラメータを指定する必要があります。以下に示すように:

dataType  functionName( dataType1 param1, dataType2 param2 ... ){
    //body
}

dataType1 param1, dataType2 param2 ... はパラメータのリストです。関数には、パラメーターを 1 つだけ指定することも、複数のパラメーターを で区切って指定することもできます。パラメータは本質的に変数であり、定義時に型と名前を指定する必要があります。パラメーターなし関数の定義と比較すると、パラメーター化関数の定義にはパラメーター リストが 1 つだけあります。

データはパラメータを通じて関数内部に渡されて処理が行われ、処理完了後に戻り値が関数外部に通知されます。

mからnへの加算結果の計算:

#include <stdio.h>

int sum(int m, int n){
    int i, sum=0;
    for(i=m; i<=n; i++){
        sum+=i;
    }
    return sum;
}

int main(){
    int begin = 5, end = 86;
    int result = sum(begin, end);
    printf("The sum from %d to %d is %d\n", begin, end, result);
    return 0;
}

実行結果:

The sum from 5 to 86 is 3731

sum()を定義した場合、パラメータmの値と n は不明です; sum() を呼び出すときに、begin と end の値をそれぞれ m と n に渡します。これは変数に値を代入するのと同じプロセスです。これは次と同等です:

m = begin;
n = end;

推奨チュートリアル: C 言語チュートリアル

#

以上がC言語のカスタム関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。