Typedef creates aliases for data types.
typedef unsigned int uint; typedef int* IntPtr;
uint number = 100; IntPtr ptr = &number;
typedef struct { char name[50]; int age; } Person; Person person1 = {"John", 25};
typedef int (*Operation)(int, int); int add(int a, int b) { return a + b; } Operation op = add;