Thông thường cần header stdio.h để dùng printf(). Tuy nhiên, có thể khai báo prototype của printf thủ công và gọi nó.
Ví dụ
int printf(const char *format, ...);
int main() {
printf("Hello World");
return 0;
}
Kết quả
Hello World
Giải thích: Dòng int printf(const char *format, ...); là forward declaration (khai báo trước) cho hàm printf. Linker sẽ tìm định nghĩa thực trong thư viện C chuẩn (libc) khi link.
Lưu ý: Cách này chỉ mang tính demo/minh họa. Trong code thực tế, luôn include header chuẩn để đảm bảo prototype chính xác, tránh undefined behavior do mismatch calling convention, và tận dụng macro/inline trong header.