C言語のヘッダファイルを作ってみた

こんにちはトミーです

突然ですがプログラミングの記事も作ってみようと思い作ってみてます

 

~プログラミングと私~

たまにはブログっぽいこと書きます。

中学生の頃にどうしてもマイクラ(Minecraft)がやりたくてお年玉を全て使い中古のPCを買いました。が、サウンドボードを積んでなかったので音が出なくてめっちゃ困りました。(当時は原因がさっぱりわからなかった)

マイクラも音が出ないから敵モブが後ろから来たら全くわからないし、動画を見ようにも音が出ないからつまらない

音の出ないPCで出来ることといったら一つしかありませんよね

そう・・・

プログラミングです

いや、まぁ一つしかないっていうのはだいぶ言い過ぎたと思いますが、そのときになんとなくプログラミングがしてみたいと思いプログラミングを始めてみました

選んだ言語はCです。理由はなんとなくです。

休み休み勉強して、フリーターとなった現在手探りで商業用ガチスロットのメインプログラムを作ろうと奮闘中です

 

~本題~

なんかふわっとした前置きはこんもんにしておいて本題に行きます

今回は、ヘッダファイルを作ってみようと思います

 実験用にこんなのを書いてみました

//test.h
int hello(void)
{
    printf("hello\n");
}
int a=0;
 

 

//test.c
#include<stdio.h>
#include"test.h"
int main(void)
{
    hello();
    printf("変数aの中身は%d\n",a);
    return 0;
}

 test.hがヘッダファイルでtest.cがメインのソースファイルになってます

ヘッダファイルで"hello"と表示するユーザー関数のhelloと整数型の変数aを宣言し

メインのtest.cでtest.hを呼び、hello関数とprintfで変数aの中身を表示させます

実行結果はこんな感じ

f:id:escapekousen:20190915224742p:plain

おおお~ちゃんと表示されてますね

これだけ短いプログラムだと正直すごさがわかりづらいですが

さっきちらっと話したスロットのプログラムでは

    int i=0;
    //発生させた乱数の格納用
    int j=0;
    //回転数カウント用
    int bonus=0;
    //ボーナス状態用
    //0=ボーナス未成立状態
    //1=BB内部成立状態
    //2=RB内部成立状態
    int koyaku=0;
    //小役識別用
    int coin=0;
    //コイン用
    int pay=0;
    //払い出しカウント用
    int koyaku_count=0;
    //入賞回数カウント用
    int reg_count=0;
    //レギュラー入賞回数カウント用
    int get=0;
    //獲得枚数カウント用
    int a=0;
    int b=0;
    int c=0;
    //便利な変数達
 

これを毎回コピペしてたのでめんどくさかったですが

 hensu.h的なヘッダファイルにぶちこんどいて使いたいときは

#include"hensu.h"

と書けばいいのでだいぶスッキリしますしだいぶ楽になります

 

~最後に~

プログラムの構造や仕組みなどは全く勉強してなく

こう書いたらこうなる→じゃあこうしたらどうなる?

のトライ&エラーでプログラムをひたすら作っているだけなので

自作ヘッダファイルのもっと便利な使い方があると思いますが

とりあえず変数の宣言とユーザー関数の定義を毎回書かなくて良いっていうことだけでだいぶ便利なので使い倒していこうと思います

 

 

 

 

~そういえば~

この記事で50記事目になります

読者数が154人で総アクセス数が5000を越えました

今日まで続けられたのも皆様のおかげです

ありがとうございます

これからもいろいろなことに挑戦しリアルな報告をしていきます

これからも応援よろしくお願いします。