C nâng cao

Cấp phát bộ nhớ động
Khi cần một số lượng ô nhớ không biết trước được như lúc nhập dữ liệu từ bàn phím hoặc đọc file, ta cần một cách để quản lý bộ nhớ động. Trong thư viện `stdlib` (standard library) có hai hàm cấp phát bộ nhớ động đó là calloc và malloc.
Kiểu union
Kiểu union là một kiểu đặc biệt trong ngôn ngữ C cho phép lưu nhiều kiểu dữ liệu khác nhau trong cùng một ô nhớ.
Kiểu enum
Kiểu enum là một kiểu trong C. Nó chủ yếu được sử dụng để gán một danh sách nhãn (label) cho các hằng số, các nhãn này sẽ làm cho chương trình của chúng ta dễ đọc hơn.
Struct Bit Field
Chúng ta có thể đặt các thành phần trong struct của ngôn ngữ C một số lượng bit nhất định.
Input và Output
Input mặc định là nhập từ bàn phím, output mặc định là màn hình
File I/O
Các thao tác với file trong C bao gồm mở, tạo, đóng file cùng với thêm, xóa, sửa nội dung file.
Tiền xử lý và Header
Tiền xử lý là bước xử lý trước khi biên dịch mã nguồn. Tiền xử lý sẽ xử lý file mã nguồn và tạo ra file sau khi đã xử lý. Tất cả các tiền xử lý đều bắt nguồn bằng ký tự `#`.
Danh sách tham số hàm
Khi gọi hàm một hàm với một tham số tùy ý có thể sử dụng dấu ... và các hàm trong thư viện <stdarg.h>.
Tham số dòng lệnh
Tham số dòng lệnh khi chạy chương trình C cũng chính là tham số của hàm main