Thực chất của include là gì

header.h

#include <stdio.h>
#include <stdint.h>

static int sqr(int x){
    return x^2;
}

main.c

include "header.h"

include <stdio.h>

Khi include, compiler bê nguyên file header.h và stdio.h vào file main.c

 

Mở rộng: trong header.h, ta dùng static hàm, thì khi include trong file main.c, có gọi được hàm đó từ chỗ khác trong main.c không? (Ví dụ hàm sqr(int x)
Có. Vì khi include header.h, toàn bộ file header.h được copy vào main.c, bao gồm cả định nghĩa của hàm sqr(int x). Do đó, nó tương đương với định nghĩa của static hàm có trong main.c, nên hàm khác trong main.c gọi được.  

Nhanvat

Ủng hộ chúng tôi

Nếu bạn thấy nội dung hữu ích, hãy mời nhóm một ly cà phê để chúng tôi có thêm động lực làm tài liệu và mã nguồn miễn phí

Chuyển khoản (Việt Nam)
Mã QR chuyển khoản ủng hộ InvenCamp
Quét bằng app ngân hàng, hoặc chạm vào mã để chọn app HOANG BA DUY 2154755042
Thẻ quốc tế / PayPal Buy Me A Coffee Mở trang Buy Me a Coffee
Logo

AI InvenCamp

Trực tuyến 24/7

Xin chào! Tôi là trợ lý tự động của InvenCamp. Tôi có thể tra cứu giúp bạn sản phẩm, bài viết hướng dẫn và chính sách có trên website. Bạn cần tìm gì ạ?

Câu hỏi gợi ý: