Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

C言語のインライン関数とは?仕組みと基本構文をわかりやすく解説

インライン関数(inline function)とは、関数を呼び出している箇所に関数本体のコードを直接展開できるようにした関数のことです。これにより、関数呼び出しにかかるオーバーヘッドを削減できます。なお、実際にコードを展開するかどうかは、常にコンパイラが判断します。

  • インライン関数では、関数呼び出しが実際のプログラムコードに置き換えられます。

  • インライン関数は主に小規模な計算に使用されます。大規模な処理には適していません。

  • インライン関数は通常の関数とほぼ同じですが、関数名の前に「inline」キーワードを付ける点だけが異なります。

インライン関数の基本構文

インライン関数は、以下の構文で定義します。

inline function_name() {
    // 関数の定義
}

サンプルプログラム

以下は、C言語でインライン関数を使用したプログラムの例です。

#include<stdio.h>

inline int mul(int a, int b) // インライン関数の宣言{
    return(a*b);
}

int main(){
    int c;
    c=mul(2,3);
    printf("Multiplication:%d\n",c);
    return 0;
}

実行結果

上記のプログラムを実行すると、次のような結果が出力されます。

6

補足:インライン関数を使う際の注意点

インライン関数を活用すると、関数呼び出しのオーバーヘッドがなくなるため、処理速度の向上が期待できます。ただし、大きな関数や頻繁に呼び出される関数を無闇にインライン化すると、コードサイズが肥大化し、逆にパフォーマンスが低下する可能性があります。そのため、短く単純な処理に限定して使用するのが一般的です。

  1. C言語のstrcmp()関数とは?文字列比較の基本と使い方を徹底解説

    C言語の標準ライブラリ関数 int strcmp(const char *str1, const char *str2) は、ポインタ str1 が指し示す文字列と、str2 が指し示す文字列を比較するための関数です。C言語において、文字型の配列は「文字列」と呼ばれます。まずは文字列の基本的な扱い方から確認していきましょう。文字列の宣言文字列(文字配列)の宣言は以下のように行います。char stringname [size];例えば、char string[50]; と宣言すれば、最大50文字の長さを持つ文字列を格納できます。文字列の初期化文字列の初期化には、主に次の2つの方法があります。1

  2. C言語のstrcpy()関数とは?基本構文と使い方をわかりやすく解説

    C言語のライブラリ関数 char *strcpy(char *dest, const char *src) は、src が指し示す文字列を dest にコピーするための関数です。 C言語では、文字の配列のことを「文字列」と呼びます。 文字列の宣言 文字列(文字配列)の宣言は、以下の形式で行います。 char stringname[size]; 例えば char string[50]; と宣言すると、最大50文字の文字列を格納できる配列が確保されます。 文字列の初期化 文字列の初期化には、主に以下の2つの方法があります。 1. 文字定数を使う方法 char string[10] = {H,