Sự khác biệt giữa Khai báo và Định nghĩa trong C

Mục lục:

Sự khác biệt giữa Khai báo và Định nghĩa trong C
Sự khác biệt giữa Khai báo và Định nghĩa trong C

Video: Sự khác biệt giữa Khai báo và Định nghĩa trong C

Video: Sự khác biệt giữa Khai báo và Định nghĩa trong C
Video: Khai báo hằng số trong lập trình C (const, define) - Học lập trình C cơ bản 2024, Tháng bảy
Anonim

Sự khác biệt chính giữa khai báo và định nghĩa trong C là khai báo trong C cho trình biên dịch biết về tên hàm, kiểu trả về và các tham số trong khi định nghĩa trong C chứa việc triển khai thực tế của hàm. Nghĩa là, khai báo cung cấp thông tin về hàm cho trình biên dịch trong khi định nghĩa chứa các câu lệnh thực sự của hàm để thực hiện một tác vụ cụ thể.

C là một ngôn ngữ lập trình có cấu trúc, mục đích chung. Nó sử dụng các cấu trúc điều khiển như if / else, các lần lặp lại như vòng lặp for, vòng lặp while và các hàm. Hàm là một tập hợp các câu lệnh giúp thực hiện lặp đi lặp lại một tác vụ nào đó. Hơn nữa, có thể gọi các hàm từ hàm chính. Sau khi thực hiện câu lệnh cuối cùng của hàm, điều khiển sẽ chuyển trở lại hàm chính. Bài viết này thảo luận về việc khai báo và định nghĩa các hàm trong C và so sánh sự khác biệt giữa chúng. Định nghĩa hàm chỉ định những gì hàm thực hiện và khai báo chỉ định những gì chuyển đến hàm; nó là một nguyên mẫu.

Khai báo trong C là gì?

Khai báo cung cấp thông tin về chức năng cho trình biên dịch. Cú pháp khai báo như sau.

return_ type function_name (danh sách tham số);

Giả sử một hàm tính tổng của hai số nguyên. Khai báo như sau.

int sum (int num1, int num2);

Tên của hàm là tổng và các tham số là hai số nguyên là num1 và num2. Hàm này trả về một số nguyên. Câu lệnh hoàn chỉnh kết thúc bằng dấu chấm phẩy.

Không nhất thiết phải đưa tên của các tham số vào khai báo. Do đó, cũng có thể chỉ đề cập đến kiểu dữ liệu như sau. Sau đây là một khai báo hợp lệ.

int sum (int, int);

Định nghĩa trong C là gì?

Định nghĩa chứa các câu lệnh thực tế của hàm để thực hiện một nhiệm vụ cụ thể. Cú pháp như sau.

return_type function_name (danh sách tham số) {

// câu lệnh hàm

}

Tên chức năng giúp xác định chức năng. Khi gọi một hàm, các giá trị sẽ được chuyển đến hàm đó. Các giá trị này sao chép vào các tham số. Danh sách tham số có thể chứa một tham số hoặc một số tham số. Và các tham số này có kiểu dữ liệu và tên. Hơn nữa, có thể có các hàm mà không cần bất kỳ tham số nào.

Các câu lệnh của hàm nằm bên trong dấu ngoặc nhọn. Nó là cơ quan chức năng. Sau khi thực hiện hàm, nó sẽ trả về một giá trị. Kiểu trả về phụ thuộc vào giá trị trả về. Nếu hàm trả về một số nguyên, kiểu trả về là int. Nếu hàm trả về giá trị kép, thì kiểu trả về là kép, v.v.

Tham khảo đoạn mã dưới đây với khai báo và định nghĩa của một hàm.

Sự khác biệt giữa Khai báo và Định nghĩa trong C
Sự khác biệt giữa Khai báo và Định nghĩa trong C

Hình 01: Chương trình Tính Tổng của Hai Số

Theo chương trình trên, dòng 3 hiển thị phần khai báo. Nó cho trình biên dịch biết về tên hàm, các tham số, v.v. Trong hàm chính, hai giá trị được lấy từ bàn phím và chúng được lưu trữ vào biến ‘a’ và ‘b’. Trong dòng 12, các giá trị này được chuyển đến hàm gọi là sum. ‘A’ và ‘b’ này là các đối số.

Trong dòng 16, hàm tổng thực thi. Nó sao chép giá trị a thành num1 và giá trị b thành num2. Hàm này trả về tổng và giá trị đó lưu vào biến ‘ans’ (dòng 12). Cuối cùng, câu trả lời in ra màn hình. Tóm lại, dòng 3 hiển thị khai báo trong khi dòng 16 đến 18 hiển thị định nghĩa.

Sự khác biệt giữa Khai báo và Định nghĩa trong C là gì?

Khai báo là một nguyên mẫu chỉ định tên hàm và chữ ký kiểu như kiểu dữ liệu, kiểu trả về và tham số nhưng bỏ qua phần thân của hàm. Định nghĩa xác định tên hàm và ký hiệu kiểu như kiểu dữ liệu, kiểu trả về và tham số, và nó bao gồm cả phần thân của hàm. Khai báo cho trình biên dịch biết về tên hàm và cách gọi nó. Mặt khác, định nghĩa chứa việc triển khai thực tế của chức năng. Nó mô tả nhiệm vụ của hàm.

Sự khác biệt giữa Khai báo và Định nghĩa trong C trong Biểu mẫu Bảng
Sự khác biệt giữa Khai báo và Định nghĩa trong C trong Biểu mẫu Bảng

Tóm tắt - Khai báo so với Định nghĩa trong C

Sự khác biệt giữa khai báo và định nghĩa trong C là khai báo trong C cho trình biên dịch biết về tên hàm, kiểu trả về và các tham số trong khi định nghĩa trong C chứa cách triển khai thực tế của hàm.

Đề xuất: