Void (kiểu dữ liệu)Trong nhiều ngôn ngữ lập trình bắt nguồn từ C và Algol68, kiểu void (tiếng Anh: void type) là một kiểu kết quả của hàm nếu hàm này không trả về bất kì kết quả (giá trị) nào. Những hàm như thế thường được gọi trong chương trình vì những hiệu ứng biên của chúng. Các kiểu void có cùng mục đích với các cấu trúc cú pháp xác định các subroutine (đoạn chương trình con) trong Visual Basic và các procedure (thủ tục) trong ngôn ngữ lập trình Pascal. Trong những trường hợp như vậy, kiểu void có mục đích tương tự như kiểu unit (kiểu đơn vị) từ các ngôn ngữ lập trình hàm; tuy nhiên, có nhiều sự khác biệt trong các cách dùng được cho phép, như kiểu void được lấy làm kiểu rỗng và không có giá trị. Để dễ so sánh, xin hãy xem thêm đề mục Kiểu unit#Trong các ngôn ngữ lập trình. Ngôn ngữ C và C++ cũng cung cấp con trỏ chỉ kiểu void (được đặc tả bởi Lịch sửTrong số những ngôn ngữ lập trình hiện đại, từ khóa void lần đầu tiên xuất hiện trong C++ để hỗ trợ cho khái niệm con trỏ được tổng quát hóa. Tuy nhiên, nhờ sự vay mượn nhanh chóng từ C++, tài liệu tiêu chuẩn đầu tiên chứa từ khóa void đã trở thành chuẩn của ngôn ngữ C và đã được ANSI công bố vào năm 1989. Trong phạm vi ngôn ngữ C++, void đã được chuẩn hóa vào năm 1998. Sau này, từ khóa void và những cấu trúc ngôn ngữ liên quan đến nó đã được thừa kế bởi các ngôn ngữ Java, C# và D. Cú phápNgữ nghĩaNgôn ngữ C trước khi có kiểu voidMột hàm có kiểu kết quả void kết thúc hoạt động bằng cách hoặc chạm tới điểm kết thúc của hàm hoặc thực hiện một lệnh trả về mà không có giá trị trả về. Kiểu void có thể cũng xuất hiện như là đối số (argument) duy nhất của một nguyên mẫu hàm (function prototype) nhằm xác định là hàm không có tham số nào cả. Chú ý rằng, mặc dù có tên, nhưng trong tất cả những trường hợp này, kiểu void được dùng làm kiểu unit, chứ không làm số 0 (zero) hay kiểu đáy, thậm chí không giống như một kiểu unit thực sự là kiểu đơn nhất, kiểu void bao gồm một tập hợp rỗng các giá trị, và ngôn ngữ không cung cấp bất cứ cách nào để khai báo một đối tượng hoặc biểu diễn một giá trị với kiểu Trong những phiên bản sớm nhất của C, các hàm không có kết quả xác định đã được mặc định kiểu trả về của Việc sử dụng tường minh void và việc không cho các đối số ở trong một nguyên mẫu hàm có các ngữ nghĩa khác nhau trong C và C++, và được chi tiết hóa trong bảng sau đây:[3]
Tuy nhiên, một nguyên mẫu C không lấy các đối số, ví dụ Tham khảo
|