C Typedef

Learn about 'typedef' in C.

Typedef

In C, 'typedef' is a keyword used to create custom type aliases. It allows you to define a new name for an existing data type, making your code more readable and potentially more portable. 'typedef' is often used to define custom data types and structures or to simplify complex type declarations.

Syntax of using a 'struct':

typedef struct {
    int x;
    int y;
} point;

Example of using a 'struct' in C:

c Copy Code
#include <stdio.h>
#include <math.h>

typedef struct {
    int x;
    int y;
} point;

// Function to create a new Point
point cre_point(int x, int y) {
    point newPoint;
    newPoint.x = x;
    newPoint.y = y;
    return newPoint;
}

// Function to calculate the distance between two points
double cal_distance(point p1, point p2) {
    int dx = p1.x - p2.x;
    int dy = p1.y - p2.y;
    return sqrt(dx * dx + dy * dy);
}

int main() {
    // Create two points
    point point1 = cre_point(2, 3);
    point point2 = cre_point(5, 7);

    // Calculate and print the distance between the two points
    double distance = cal_distance(point1, point2);
    printf("Distance between point1 and point2: %.2lf\n", distance);

    return 0;
}

We define a 'point' structure and create functions to create points and calculate the distance between two points. The 'main' function demonstrates the usage of these functions by creating two points, calculating the distance between them, and printing the result.

Output:
Distance between point1 and point2: 5.00

Note: In C, 'math.h' is a standard library header that provides various mathematical functions and constants. These functions allow you to perform common mathematical operations, such as trigonometric functions, logarithmic functions, exponentiation, rounding, etc.

Enumeration vs Typedef

In C, "typedef" and "enum" are both used in programming, but they serve different purposes. For example:

enum typedef
'typedef' is a keyword used to create an alias or synonym for a data type. It allows you to define a new name for an existing data type to improve code readability and maintainability. 'enum' is used to define a user-defined data type that consists of a set of named integer values. It is typically used to represent a set of related constants.
It's often used with user-defined data types, such as structs and unions, or with built-in data types. Enums allow you to create a distinct type where the values are meaningful and readable identifiers.
For example, in C:

typedef int Integer;
Integer x = 42;
For example, in C:

enum Days {
Sunday,
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday
};

enum Days today = Wednesday;

In summary, the key difference is that 'typedef' is used to create an alias for an existing data type, making code more readable, while 'enum' is used to define a new data type for representing a set of related integer constants with meaningful names.

What's Next?

We actively create content for our YouTube channel and consistently upload or share knowledge on the web platform.