Phân biệt sự khác nhau giữa (typedef struct) vs (struct)

Trong ngôn ngữ lập trình C, typedef struct và struct là hai cách khác nhau để định nghĩa kiểu dữ liệu cấu trúc. Dưới đây là sự khác nhau giữa hai cách này:

  1. typedef struct:
    • typedef struct được sử dụng để định nghĩa một kiểu dữ liệu cấu trúc mới.
    • Khi sử dụng typedef struct, bạn tạo ra một tên mới (được đặt bởi bạn) để đại diện cho kiểu cấu trúc đó.
    • Cú pháp thông thường là typedef struct { /* members */ } TypeName;, trong đó TypeName là tên bạn muốn đặt cho kiểu dữ liệu cấu trúc.
    • Ví dụ:
typedef struct {
    int x;
    int y;
} Point;
  1. Ở đây, Point là tên bạn đã đặt cho kiểu dữ liệu cấu trúc có thành phần x và y.
  2. struct:
    • struct được sử dụng để khai báo biến của kiểu dữ liệu cấu trúc đã được định nghĩa trước đó.
    • Khi sử dụng struct, bạn không tạo ra một tên mới, mà chỉ khai báo một biến thuộc kiểu dữ liệu cấu trúc đã tồn tại.
    • Cú pháp thông thường là struct TypeName { /* members */ };, trong đó TypeName là tên kiểu dữ liệu cấu trúc đã được định nghĩa trước đó.
    • Ví dụ:
struct Point {
    int x;
    int y;
};

int main() {
    struct Point p;  // Khai báo biến p thuộc kiểu dữ liệu cấu trúc Point
    p.x = 0;
    p.y = 0;
    return 0;
}
  1. Ở đây, struct Point chỉ định rõ rằng biến p thuộc kiểu dữ liệu cấu trúc đã được định nghĩa trước đó.

Tóm lại, typedef struct được sử dụng để tạo ra một tên mới đại diện cho kiểu dữ liệu cấu trúc, trong khi struct được sử dụng để khai báo biến của kiểu dữ liệu cấu trúc đã tồn tại.

Related Posts
So sánh ngôn ngữ C++ và Java

Có nhiều điểm khác biệt và tương đồng giữa ngôn ngữ lập trình C++ và Java . Dưới đây là danh sách những điểm khác Read more

Con trỏ trong C/C++

Con trỏ là một trong những tính năng quan trọng của mỗi ngôn ngữ lập trình. Thực tế, để được Read more

Single Linked List C++ (Danh sách liên kết đơn).

Danh sách liên kết đơn là gì? Danh sách đơn liên kết (Danh sách liên kết đơn) là một dữ Read more

Con trỏ và cấp phát động trong C++

Con trỏ và cấp phát động trong C++ Con trỏ (pointer) là một khái niệm quan trọng và khó nhất Read more

Hãy bình luận đầu tiên

Để lại một phản hồi