【独学C言語入門㉓】typedef

Typedefを使用するとデータ型の名前を好きなように付けることができます。

typedef 現データ型 新データ型

実際の使用例を見てみます。

#include <stdio.h>

typedef unsigned int u_int;

main()
{
	u_int a = 3;

	printf("%d\n", a);
}

このtypedefを使用すれば「unsigned int」などを多用する時にすっきりと記述することができます。しかし、おそらく最も有名なtypedefの使い方は構造体のテンプレートの宣言です。以下のようにシンプルに表記することができます。

//typedefなし(従来)
struct man {
   int ht;
   int wt;
};

//structが必要
struct man taro;
struct man jiro;
struct man saburo;
//typedefあり
typedef struct aaa {
   int ht;
   int wt;
} man;

//structは不要
man taro;
man jiro;
man saburo;

//上記のaaaは省略してもOK
//何を書いても無視される

実際に使用してみます。⑳のソースコードをtypedefに変更します。

#include <stdio.h>

typedef struct human {
	char name[10];
	int age;
} man;

main()
{
	//構造体変数の宣言と初期化
	man taro = {"taro",20};

	strcpy_s(taro.name, 10,"aki");

	printf("%s\n", taro.name);
	printf("%d\n", taro.age);
}

//右が切れたら左にスワイプしてください

構造体の宣言の方法、使い方は理解してもらえましたか?不安な部分があったら、じっくり理解して次に進んでもらえればと思います。

独学C言語入門一覧に戻る