C typedef
Le langage C fournit le mot-clétypedef, vous pouvez l'utiliser pour donner un nouveau nom à un type. L'exemple suivant définit un terme pour un nombre d'un octetBYTE:
typedef unsigned char BYTE;
Après cette définition de type, l'identifiant BYTE peut être utilisé comme type.unsigned charabréviations, telles que :
BYTE b1, b2;
Par convention, la définition utilise des lettres majuscules pour rappeler aux utilisateurs que le nom du type est une abréviation symbolique, mais vous pouvez aussi utiliser des lettres minuscules, comme suit :
typedef unsigned char byte;
Vous pouvez également utilisertypedefpour donner un nouveau nom à un type de données défini par l'utilisateur. Par exemple, vous pouvez utiliser typedef sur une struct pour définir un nouveau nom de type de données, puis utiliser ce nouveau type de données pour définir directement des variables de struct, comme suit :
Exemple
Lorsque le code ci-dessus est compilé et exécuté, il produit les résultats suivants :
书标题 : C 教程 书作者 : Example 书类目 : 编程语言 书 ID : 12345
typedef vs #define
#defineest une directive C utilisée pour définir des alias pour divers types de données, ettypedefest similaire, mais ils présentent les différences suivantes :
- typedefLimité à la définition de noms symboliques pour les types,#defineIl peut non seulement définir des alias pour les types, mais aussi définir des alias pour les valeurs ; par exemple, vous pouvez définir 1 comme ONE.
- typedefest interprété par le compilateur,#defineL'instruction est traitée par le préprocesseur.
Voici l'utilisation la plus simple de #define :
Exemple
Lorsque le code ci-dessus est compilé et exécuté, il produit les résultats suivants :
TRUE 的值: 1 FALSE 的值: 0autres extensions