Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Tiêu chuẩn ngôn ngữ lập trình C

Tìm hiểu các tiêu chuẩn C (C standards) - quy định cách trình biên dịch nên xử lý code. Ví dụ kinh điển: kiểu trả về của main().

Vấn đề main() void

void main() { /* code */ }

Turbo C chấp nhận nhưng các trình biên dịch hiện đại (GCC, Clang, MSVC) báo lỗi. Tiêu chuẩn quy định main() phải trả về int.

Tiêu chuẩn C là gì?

Định nghĩa hành vi chuẩn của chương trình: cách chạy, định nghĩa hàm built-in, v.v. Tiêu chuẩn mới nhất (tính đến 2018): ISO/IEC 9899:2018 (C17/C18).

Khai báo main() chuẩn

// Không tham số
int main() {
    /* code */
    return 0;
}

// Có tham số dòng lệnh
int main(int argc, char *argv[]) {
    /* code */
    return 0;
}

Lưu ý: Luôn trả về 0 khi thành công. Các trình biên dịch cũ cho phép bỏ return 0 nhưng không khuyến khích.

Một số tiêu chuẩn quan trọng khác

  • Kiểu dữ liệu: kích thước int, long, pointer phụ thuộc implementation
  • Hành vi未定义 (undefined behavior): tràn số dấu, truy cập ngoài mảng, v.v.
  • Thư viện chuẩn: , , ,...

Tuân thủ tiêu chuẩn giúp code portable (chạy được trên nhiều nền tảng/trình biên dịch khác nhau).