TRONG CHẾ ĐỘ BIÊN DỊCH, MỘT CHƯƠNG CÂU LỆNH ĐÚNG VỀ CÚ PHÁP NẾU CÁC BIẾN ĐÃ ĐƯỢC KHAI TRÌNH ĐÃ ĐƯỢC DỊCH THÔNG SUỐT, HỆ THỐNG KHÔNG BÁO TRƯỚC

câu 1: - BAI
BAI

Câu 1: trong chế độ biên dịch, một chương

câu lệnh đúng về cú pháp nếu các biến đã được khai

trình đã được dịch thông suốt, hệ thống không

báo trước .Nếu a và b khai báo kiểu integer ( giá trị từ

báo lỗi.Có thể khẳng định rằng ta đã có một

-32768 đến 32767)

chương trình đúng hay chưa?Tại sao?

Nếu cho a=20000, b=15000 thì Z thuộc kiểu longint thì

câu lệnh vẫn sai về ngữ nghĩa trong TP vì nó qui định

cộng hai số integer thì phải trả về cùng kiểu. Nhưng

với Free Pascal thì không lỗi.

Nếu khai báo a,b thuộc longint thì mới đúng.

Lỗi ngữ nghĩa sinh ra khi không đáp ứng yêu cầu ngữ

nghĩa của ngôn ngữ hoặc chương trình dịch cụ thể.