Trả lời nhanh
Từ khóa của một ngôn ngữ lập trình là những từ dành riêng, mỗi từ được ngôn ngữ quy định cho một mục đích sử dụng nhất định. Người lập trình không được dùng từ khóa với ý nghĩa khác, chẳng hạn đặt tên biến trùng từ khóa. Vì vậy, nếu đề có phương án gộp “cả các ý trên đều đúng” thì chọn phương án đó.
Đề bài và cách hiểu
Câu hỏi quen thuộc trong môn Tin học là: “Từ khóa của một ngôn ngữ lập trình là…”. Các ý thường xuất hiện trong phương án gồm: là những từ dành riêng, cho một mục đích sử dụng nhất định, và người lập trình không được dùng với ý nghĩa khác.
Ba ý này đều mô tả đúng một khái niệm, chúng bổ sung cho nhau chứ không loại trừ nhau. Vì phương án trên các đề có thể được sắp xếp khác nhau, em hãy đối chiếu từng ý với định nghĩa dưới đây thay vì học thuộc chữ cái.
Từ khóa là gì?
Từ khóa (keyword, reserved word) là những từ mà ngôn ngữ lập trình đã “giữ chỗ” sẵn. Mỗi từ khóa gắn với một chức năng cố định: khai báo, rẽ nhánh, lặp, bắt đầu hay kết thúc khối lệnh…
Trình biên dịch (hoặc trình thông dịch) nhận ra từ khóa để hiểu cấu trúc chương trình. Nếu em dùng từ khóa làm tên biến, chương trình sẽ báo lỗi cú pháp.
Ví dụ từ khóa ở một số ngôn ngữ
| Ngôn ngữ | Ví dụ từ khóa | Công dụng |
|---|---|---|
| Pascal | program, uses, const, var, begin, end | Đặt tên chương trình, khai báo thư viện, hằng, biến; mở và đóng khối lệnh |
| Python | if, else, for, while, def | Rẽ nhánh, lặp, định nghĩa hàm |
| C++ | int, return, for, while | Khai báo kiểu số nguyên, trả về giá trị, lặp |
Mỗi ngôn ngữ có bộ từ khóa riêng. Một từ là từ khóa ở ngôn ngữ này nhưng chưa chắc là từ khóa ở ngôn ngữ khác. Chẳng hạn, int là từ khóa của C++ nhưng không phải từ khóa của Python.
Phân tích từng ý của đề
- “Là những từ dành riêng”: đúng. Từ khóa đã được ngôn ngữ giữ lại, không dành cho việc đặt tên tùy ý.
- “Cho một mục đích sử dụng nhất định”: đúng. Mỗi từ khóa có một công việc xác định, ví dụ
whiledùng để lặp. - “Người lập trình không được dùng với ý nghĩa khác”: đúng. Đây là hệ quả của hai ý trên.
Cả ba ý đều đúng, nên phương án tổng hợp (nếu có) mới là đáp án đầy đủ nhất. Ngược lại, các phương án nói “từ khóa là tên do người lập trình tự đặt” hoặc “từ khóa có thể dùng làm tên biến” là sai.
Phân biệt từ khóa, tên chuẩn và tên do người dùng đặt
- Từ khóa: dành riêng, không được dùng sai mục đích (ví dụ
begin,if). - Tên chuẩn: do ngôn ngữ đặt sẵn với ý nghĩa quy ước (như
integer,writelntrong Pascal), nhưng về nguyên tắc người lập trình có thể khai báo lại với nghĩa khác. Không nên làm vậy vì dễ gây nhầm lẫn. - Tên do người lập trình đặt: tên biến, hằng, chương trình… tự chọn theo quy tắc của ngôn ngữ và không được trùng từ khóa.
Lỗi sai thường gặp
- Nghĩ rằng mọi từ có sẵn như
print,writelnđều là từ khóa. Thực tế chúng là tên hàm hoặc thủ tục có sẵn, và tùy ngôn ngữ mà có phải từ khóa hay không. - Đặt tên biến là
end,for,var… làm chương trình báo lỗi. - Cho rằng từ khóa giống nhau ở mọi ngôn ngữ.
Mẹo nhớ: từ khóa giống “chỗ ngồi đã đặt trước” trong rạp hát. Người khác không thể ngồi vào đó với mục đích khác.
Bài luyện tập
- Trong Pascal, tên nào sau đây không thể dùng để đặt tên biến:
tong,begin,so_a?
Đáp án:begin, vì là từ khóa. - Nêu một từ khóa trong Python dùng để lặp.
Đáp án:forhoặcwhile. - Đúng hay sai: “Người lập trình có thể dùng từ khóa
iflàm tên biến để lưu điểm.”
Đáp án: Sai, vìiflà từ khóa dành riêng cho câu lệnh rẽ nhánh.
Câu hỏi thường gặp
Từ khóa của ngôn ngữ lập trình là gì?
Là những từ dành riêng, mỗi từ có một mục đích sử dụng nhất định trong ngôn ngữ, và người lập trình không được dùng với ý nghĩa khác.
Có thể dùng từ khóa để đặt tên biến không?
Không. Dùng từ khóa làm tên biến sẽ gây lỗi cú pháp vì trình dịch hiểu đó là lệnh hoặc cấu trúc của ngôn ngữ.
Cho ví dụ từ khóa trong Pascal?
Các từ khóa thường gặp là program, uses, const, var, begin, end, if, then, else, for, while, do.
Từ khóa có giống nhau ở mọi ngôn ngữ lập trình không?
Không. Mỗi ngôn ngữ có tập từ khóa riêng, một số từ như if, for, while xuất hiện ở nhiều ngôn ngữ nhưng cú pháp có thể khác.