Một hiểu lầm phổ biến / huyền thoại là int main
là hình thức chỉ có giá trị theo quy định của tiêu chuẩn. Điều đó không đúng.
Tiêu chuẩn C nói về hai triển khai: lưu trữ và tự do. "Thực hiện" trong trường hợp này có nghĩa là trình biên dịch. Trình biên dịch được lưu trữ biên dịch cho một hệ điều hành cụ thể và trình biên dịch tự do biên dịch cho một ứng dụng kim loại trần cụ thể. Các hệ thống nhúng hầu như luôn là các hệ thống độc lập - ngay cả trong trường hợp RTOS.
Việc triển khai tự do có thể sử dụng bất kỳ hình thức nào main()
, thậm chí họ không cần phải có một chức năng gọi là chính. Thông thường, họ sử dụng biểu mẫu void main (void)
, vì nó không có ý nghĩa gì để trả lại bất cứ điều gì.
Điều quan trọng cần nhận ra ở đây là nó luôn là trình biên dịch quyết định hình thức main()
và không bao giờ là lập trình viên.
Đơn Lập hiện thực mà làm lại một cái gì đó từ main()
rất đáng ngờ. Làm cho bạn tự hỏi nếu những người thực hiện trình biên dịch thực sự đọc tiêu chuẩn ...
Chi tiết tại đây .