Một Số Lỗi Cú Pháp Thường Gặp Của Pascal

Cập nhật thông tin chi tiết về Một Số Lỗi Cú Pháp Thường Gặp Của Pascal mới nhất ngày 04/12/2020 trên website Zdungk.com. Hy vọng nội dung bài viết sẽ đáp ứng được nhu cầu của bạn, chúng tôi sẽ thường xuyên cập nhật mới nội dung để bạn nhận được thông tin nhanh chóng và chính xác nhất. Cho đến thời điểm hiện tại, bài viết này đã đạt được 6,930 lượt xem.

GV: Trần Minh Thoï Page 1/2

MỘT SỐ LỖI CÚ PHÁP THƯỜNG GẶP CỦA PASCAL

1. Lỗi cú pháp là những lỗi phát sinh do lập trình viên viết sai những quy định về văn phạm của hệ thống

hoặc ngơn ngữ. Thí dụ các lỗi sau đây là những lỗi cú pháp:

(a + b * 2: thiếu dấu đĩng ngoặc

BEGIM: định viết BEGIN, sai N

2. Xử lý lỗi . Lỗi cú pháp được phát hiện trong quá trình dịch. Turbo Pascal báo lỗi cú pháp theo nguyên

tắc “Mỗi lần chỉ báo một lỗi”.

Nếu gặp lỗi ta cần trở về chế độ soạn thảo, tìm vị trí xuất hiện lỗi, sửa lại lỗi đĩ rồi dịch lại chương trình.

Sau khi báo lỗi, Turbo Pascal sẽ chờ ta bấm phím ESC để trở về chế độ soạn thảo. Con trỏ của màn hình

soạn thảo sẽ đặt ở cạnh vị trí xuất hiện lỗi, thơng thường quá đi 1 ký tự.

3. Các thơng báo lỗi thường gặp và gợi ý khắc phục.

Lỗi 2. Identifier expected: mong gặp định danh (có thể do chưa khai báo biến, hằng…)

Lỗi 3. Unknown identifier: định danh chưa được khai báo. Hãy khai báo định danh này ở đầu thủ tục

hoặc chương trình.( có thể do sai chính tả một tên, từ khoá nào đó)

Lỗi 4. Duplicate identifier: định danh được khai báo 2 lần trở lên.

Lỗi 5. Syntax error: Lỗi cú pháp. Gặp một ký tự sai hoặc viết sai một hằng.

Lỗi 6. Error in real constant: Viết sai hằng thực.

Lỗi 7. Error in integer constant: Viết sai hằng nguyên.

Chú ý rằng khai báo CONST c = 1234 sẽ cho ta một hằng c kiểu nguyên. Muốn cĩ một hằng kiểu thực, ta

viết CONST c = 1234.0. Những hằng cĩ giá trị nằm ngồi khoảng -2147483648..2147483647 cần được

khai báo theo kiểu thực, thí dụ:

CONST c = 12345678912.0;

Lỗi 8. String constant exceeds line: giá trị của xâu ký tự quả dài, xem lại cĩ thiếu dấu đĩng/mở (dấu nháy

đơn) hằng văn bản khơng?

Lỗi 10. Unexpected end of file: Cần gặp dấu kết tệp. Lỗi 10 cĩ thể xuất hiện trong các trường hợp sau:

– Trong trương trình các cặp BIGIN và END khơng cân đối.

– Tệp khác được gọi lồng tại một vị trí khơng hợp lệ.

– Chú thích chưa được đĩng bằng dấu } hoặc * ).

Lỗi 11. Line too long: Dịng dài quá Bộ soạn thảo cho phép phát sinh các dịng dài tối đa 249 ký tự trong

khi khi chương trình dịch chỉ làm việc với các dịng dài tối đa 126 ký tự. Lời khuyên: Khơng nên viết các

dịng dài quá 60 ký tự.

Lỗi 12. Type identifier expected: Cần cĩ định danh kiểu

Lỗi 20. Variable identifier expected: Cần một định danh cho biến Thí dụ FOR = 4 TO 20 DO sẽ sinh lỗi

20.

Lỗi 25. Invalid string length: Chiều dài xâu khơng hợp lệ. Chiều dài hợp lệ nằm trong khoảng 0 .. 255.

Lỗi 26. TYPE mismatch: Kiểu khơng tương thích. các nguyên nhân sinh lỗi cĩ thể là: – Biểu thức được

gán cho biến khơng đúng kiểu. Thí dụ

VAR x: char;

BEGIN

x: = 127 * 8

END.

Lỗi 29. Ordinal type expected: Cần một kiểu thứ bậc. Trong trường hợp này khơng được dùng các kiểu

Real, string, Record, PROCEDURE hoặc pointer.

Lỗi 30. Integer constant expected: Cần một hằng nguyên

Lỗi 31. Constant expected: Cần một hằng

Lỗi 33. Type identifier expected: Cần một định danh kiểu

Lỗi 36. BEGIN expected: Thiếu BEGIN

Lỗi 37. END expected: Thiếu END

Lỗi 38. Integer expssion expexted: Cần biểu thức nguyên

GV: Trần Minh Thoï Page 2/2

Lỗi 39. Ordinal expssion expected: Cần biểu thức thứ bậc

Lỗi 40. Boolean expssion expected: Cần biểu thức kiểu BOOLEAN

Lỗi 41. Operand types do not match operator: Kiểu tốn hạng khơng phù hợp với tốn tử

Lỗi 42. Error in expssion: Biểu thức sai. Thường gặp trường hợp sử dụng ký tự lạ hoặc quên viết dấu

phép tốn trong biểu thức.

Lỗi 43. Illegal assigment: Gans Gán khơng hợp lệ. Khơng được gán trị cho biến tệp hoặc biến khơng

định kiểu. Khơng được gán trị cho định danh hàm ở ngồi thân của hàm đĩ.

Lỗi 44. Field identifier expected: Cần một định danh thường. Lỗi phát sinh khi sử dụng bản ghi

(RECORD) khơng cĩ trường hợp đi kèm.

Lỗi 54. OF expected:Thiếu OF trong TYPE, CASE, FILE, SET, ARRAY

Lỗi 57. THEN expected:Thiếu THEN trong IF

Lỗi 58. TO or DOWN TO expected: Thiếu To hoặc DOWN TO trong FOR

Lỗi 66. String variable expected: Cần một biến string.

Lỗi 67. String expssion expected; Cần một biểu thức string.

Lỗi 74. Constant and case types do not match: Kiểu hằng và kiểu biểu thức trong CASE khơng phù hợp

với nhau.

Lỗi 75. Record variable expected: Cần một biến kiểu RECORD.

Lỗi 76. Constant out of range: Hằng vượt quá miền. Lỗi cĩ thể gặp trong các tình huống sau: – Chỉ dẫn

mảng vượt ra ngồi giới hạn của mảng – Gọi thủ tục và hàm với các tham trị cụ thể vượt ra ngồi giới hạn

đã khai báo.

Lỗi 79. Integer or Real expssion expected: Cần một biểu thức kiểu INTEGER hoặc REAL.

Lỗi 85. “;” expected: Cần cĩ dấu chấm phảy.

Lỗi 86. “: ” expected: Cần cĩ dấu hai chấm.

Lỗi 87. ” , ” expected: Cần cĩ dấu phảy

Lỗi 88. ” ( ” expected: Cần cĩ dấu mở ngoặc đơn

Lỗi 89 ” ) ” expected: Cần cĩ dấu đĩng ngoặc đơn

Lỗi 99. ” = ” expected: Cần cĩ dấu bằng.

Lỗi 91. “:= “expected: Cần dấu gán

Lỗi 92 ” [ ” or ” (. ” expected: Cần mở dấu ngoặc vuơng khi khai báo hoặc chỉ định phần tử của mảng, tập.

Lỗi 93. ” ] ” or ” .) ” expected: Cần dấu đĩng ngoặc vuơng khi khai báo hoặc chỉ định phần tử của mảng

hoặc tập.

Lỗi 94. ” .” expected: Cần dấu chấm khi chỉ định một trường trong bản ghi

Lỗi 95 ” ..” expected: Cần dấu nhiều chấm khi liệt kê giới hạn mảng, tập.

Lỗi 98. Integer variable expected: Cần biến nguyên.

Lỗi 100. String. length, mismatch: Chiều dài xâu khơng phù hợp với số lượng các phần tử của mảng ký tự.

Lỗi 102. String constant expected: Cần một hằng kiểu xâu.

Lỗi 103. Integer or real variable expected: Cần biến nguyên hoặc thực (biến số).

Lỗi 104. Ordinal variable expected: Cần biến (kiểu) thứ tự.

Lỗi 106. Character expssionexpected: Cần biểu thức kiểu ký tự.

Lỗi 112 CASE constant out of range: Hằng của tốn tửCASE khơng nằm trong giới hạn. -32768 dến 32767

Lỗi 113 Error in statement: Câu lệnh sai. Lỗi khơng sảy ra khi viết sai kí tự đầu tiên của câu lệnh.

Lỗi 200 Division by zero: chia cho số 0. (Lỗi khi chạy chương trình)

http://tranminhtho.tk

Bạn đang xem bài viết Một Số Lỗi Cú Pháp Thường Gặp Của Pascal trên website Zdungk.com. Hy vọng những thông tin mà chúng tôi đã chia sẻ là hữu ích với bạn. Nếu nội dung hay, ý nghĩa bạn hãy chia sẻ với bạn bè của mình và luôn theo dõi, ủng hộ chúng tôi để cập nhật những thông tin mới nhất. Chúc bạn một ngày tốt lành!