logo

C の typedef

typedef C プログラミングで、既存の変数に意味のある名前を付けるために使用されるキーワードです。 Cプログラム 。コマンドのエイリアスを定義するときと同様に動作します。つまり、このキーワードは、既存の変数の名前を再定義するために使用されると言えます。

typedef の構文

 typedef 

上記の構文では、' 既存の名前' は既存の変数の名前ですが、' 別名」 は、既存の変数に付けられた別の名前です。

たとえば、次のタイプの変数を作成するとします。 符号なし整数 , このタイプの変数を複数宣言したい場合は、面倒な作業になります。この問題を克服するために、私たちは以下を使用します typedef キーワード。

 typedef unsigned int unit; 

上記の声明で、私たちは次のように宣言しました。 ユニット unsigned int 型の変数を使用して typedef キーワード。

これで、次のタイプの変数を作成できます。 符号なし整数 次のステートメントを記述します。

 unit a, b; 

書く代わりに:

 unsigned int a, b; 

これまでのところ、私たちは次のことを観察してきました。 typedef キーワードは、既存の変数の代替名を提供することで便利なショートカットを提供します。このキーワードは、長いデータ型、特に構造体宣言を扱う場合に役立ちます。

モニターのサイズを決める方法

簡単な例を通して理解しましょう。

 #include int main() { typedef unsigned int unit; unit i,j; i=10; j=20; printf('Value of i is :%d',i); printf('
Value of j is :%d',j); return 0; } 

出力

 Value of i is :10 Value of j is :20 

構造体での typedef の使用

以下の構造体宣言を考えてみましょう。

 struct student { char name[20]; int age; }; struct student s1; 

上記の構造体宣言では、次の変数を作成しました。 学生 次のステートメントを記述して入力します。

 struct student s1; 

上記のステートメントは変数、つまり s1 の作成を示していますが、このステートメントは非常に大規模です。このような大きなステートメントを避けるために、 typedef 型の変数を作成するためのキーワード 学生

 struct student { char name[20]; int age; }; typedef struct student stud; stud s1, s2; 

上記のステートメントでは、変数を宣言しました スタッド タイプの構造学生。これで、 スタッド 型の変数を作成するプログラム内の変数 構造学生

上記の typedef は次のように記述できます。

 typedef struct student { char name[20]; int age; } stud; stud s1,s2; 

上記の宣言から、次のように結論付けられます。 typedef キーワードを使用すると、コードの長さとデータ型の複雑さが軽減されます。プログラムの理解にも役立ちます。

構造体宣言を typedef する別の例を見てみましょう。

 #include typedef struct student { char name[20]; int age; }stud; int main() { stud s1; printf('Enter the details of student s1: '); printf('
Enter the name of the student:'); scanf('%s',&s1.name); printf('
Enter the age of student:'); scanf('%d',&s1.age); printf('
 Name of the student is : %s', s1.name); printf('
 Age of the student is : %d', s1.age); return 0; } 

出力

 Enter the details of student s1: Enter the name of the student: Peter Enter the age of student: 28 Name of the student is : Peter Age of the student is : 28 

ポインターを使用した typedef の使用

次の助けを借りて、ポインター変数に別の名前またはエイリアス名を提供することもできます。 typedef

np.sum

たとえば、通常は次のようにポインターを宣言します。

 int* ptr; 

上記のポインター変数の名前を以下のように変更できます。

 typedef int* ptr; 

上記のステートメントでは、次の型の変数を宣言しました。 int* 。これで、次の型の変数を作成できます。 int* 'を使用するだけで ptr' 以下のステートメントに示すように変数を指定します。

 ptr p1, p2 ; 

上記の声明では、 p1 そして p2 はタイプ ' の変数です ptr'