1
Hàm main trong Python và main trong C/C++ khác nhau như thế nào?
1
Chấn Phong20 đã đăng:

thêm bình luận...
0
PyPi120 đã đăng:

Python:

if __name__ == '__main__'

C/C++:

int main()

Dễ dàng nhận thấy sự khác nhau đầu tiên đó là hàm main trong Python đi kèm với câu lệnh điều kiện if, điều này có nghĩa là hàm main trong Python chỉ là một sự tùy chọn thêm, không bắt buộc, nếu một chương trình Python không có hàm main cũng chẳng sao cả, khi nào thêm và khi nào thì không cần thêm hàm main trong Python bạn có thể xem tại đây.

Còn hàm main trong C/C++ là bắt buộc phải có, nó giúp cho trình biên dịch của C/C++ (ví dụ như GCC) nhận biết đâu là nơi để bắt đầu thực thi chương trình, nếu bạn không khai báo hàm main trong C/C++ mà thực thi chương trình, lỗi xảy ra là điều tất nhiên. Trong thực hành, cơ bản bạn có thể viết một chương trình C/C++ mà không cần hàm main vẫn có thể chạy được, nhưng điều đó không có nghĩa là chương trình C/C++ không cần hàm main mà thực chất là hàm main được chạy ngầm bên dưới, tức là được gọi một cách gián tiếp thay vì trực tiếp như ban đầu.

Sự khác nhau thứ hai đó là sự thật Python không cần hàm main bởi vì Python không chạy trực tiếp trên phần cứng, Python chạy trên PVM (Python Virtual Machine), đó là lí do vì sao bạn có thể viết và chạy từng dòng mã nguồn trực tiếp được trên Python, do đó hàm main trong Python chỉ được sử dụng với mục đích làm thêm một số công việc phụ như debug trong khi hàm main trong C/C++ là nơi mà hệ điều hành sẽ giao tiếp đầu tiên khi chương trình được thực thi.

đã bổ sung 5.4 năm trước bởi
Avatar: PyPi PyPi120
thêm bình luận...
Bạn đang thắc mắc? Ghi câu hỏi của bạn và đăng ở chế độ cộng đồng (?)