国际访客建议访问 Primers 编程伙伴 国际版站点 > C 教程 > 类型别名 typedef 以获得更好的体验。

# C 语言的类型别名 typedef

C 语言可以使用 typedef 定义类型的别名:

typedef 原类型名 新类型名;

例如:

typedef double number_t;            // 将 number_t 作为 double 的别名
typedef int* intptr_t;              // 将 intptr_t 作为 int* 的别名
typedef struct Player Player;       // 将 Player 作为 struct Player 的别名
typedef enum DayOfWeek DayOfWeek;   // 将 DayOfWeek 作为 enum DayOfWeek 的别名
typedef union Event Event;          // 将 Event 作为 union Event 的别名

示例:

#include <stdio.h>

// 定义结构体类型,并定义别名 Player,从而省略 struct
typedef struct Player
{
    char name[64];
    int hp;
    int mp;
} Player;

int main(void)
{
    // 定义 Player 类型的变量 p1 p2
    Player p1 = {'Mario', 6, 10};
    Player p2 = {'Luigi', 5, 15};
    
    return 0;
}

示例中定义结构体类型 struct Player 的同时也定义了该类型的别名 Player;从而在使用该类型时可以省略 struct

本文 更新于: 2025-11-27 09:38:06 创建于: 2025-11-27 09:38:06