独学C言語 上級

2024年版 C言語・上級レベル ~サブルーチン 1~

サブルーチン 

ある決まった処理をまとめておくことができるのがサブルーチンです。

この例は、サブルーチンに番号を渡すことで、その番号に応じたメッセージを表示するものです。

#include <stdio.h>

void sub1(int);

void main(void) {

    sub1(0);
    sub1(1);
    sub1(2); 
}

void sub1(int cnt) {
    char str[3][6] = {"12345","ABCDE","abcde"};

    printf("%d:%s\n", cnt, str[cnt]);
}

実行結果

0:12345
1:ABCDE
2:abcde

サブルーチン グローバル変数を使う

グローバル変数とは、プログラム全体からアクセスできる変数です。

ローカル変数は、宣言されているルーチンが終了するとエリアは解放されて消滅してしまいます。

グルーバル変数の宣言は、ルーチンの外部で行います。

#include <stdio.h>

void sub1(int);

int gint;

void main(void) {

    gint = 0;

    sub1(0);
    sub1(2);
    sub1(4);

    printf("サブルーチン呼び出し回数:%d", gint);

}

void sub1(int cnt) {
    char str[5][6] = {"12345","ABCDE","abcde","$%&'(","@@@@@"};

    gint++;
    printf("%d:%s\n", cnt, str[cnt]);
}

実行結果

0:12345
2:abcde
4:@@@@@
サブルーチン呼び出し回数:3

gint をグローバル変数として宣言して、サブルーチンの中だけで加算していきます。
処理終了時に、サブルーチンが呼び出された回数を表示しています。

-独学C言語 上級