Một sô lỗi biên dịch (Compile – time Errors) thường gặp trong C - Nguyễn Trần Thi Văn

pdf 5 trang hoanguyen 3450
Bạn đang xem tài liệu "Một sô lỗi biên dịch (Compile – time Errors) thường gặp trong C - Nguyễn Trần Thi Văn", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfmot_so_loi_bien_dich_compile_time_errors_thuong_gap_trong_c.pdf

Nội dung text: Một sô lỗi biên dịch (Compile – time Errors) thường gặp trong C - Nguyễn Trần Thi Văn

  1. Tài li ệu h ọc t ập Mơn : Lập trình C Mt sơ li biên d ch (Compile – time Errors) th ưng g p trong C o0o STT Thơng báo l i g c Ý ngh ĩa 1 ( expected 2 ) expected Thi u d u 3 , expected Các l i này th ưng x y ra khi ta s ơ sĩt, d n đ n 4 { expected thi u các d u m ho c đĩng ngo c. 5 } expected 6 286/287 instructions not enabled Tp l nh c a b Vi x lí 80286 và b x lí tốn hc ch ưa đưc kích ho t. Vào Options/Compiler/Advanced Code generation đ điu ch nh l i 7 Ambiguity between 'function1' and 2 hàm function1 và function2 gi ng nhau, khơng 'function2' th phân bi t đưc. 8 Array bounds missing ] Thi u d u đĩng ngo c ] khi truy xu t đ n các ph n t c a m ng 9 Array must have at least one element Khi khai báo mng ph i cĩ ít nh t 1 ph n t . X y ra khi khai báo m ng mà SPT t i đa là âm ho c bng 0. 10 Array size too large Kích th ưc c a m ng quá l n, v ưt quá dung lưng vùng nh quy ưc là 64K 11 Bit field cannot be static Ki u d li u bit field khơng th cĩ ki u static 12 Bit field too large Kích th ưc c a bit field quá l n 13 Bit fields must be signed or unsigned int Ki u d li u c a bit field ph i là s nguyên 14 Bit fields must contain at least one bit Kích th ưc c a m i bit field ph i ≥ 1 bit 15 Body already defined for this function Hàm đã đưc đ nh ngh ĩa r i. L i x y ra khi ta vi t ph n thân c a m t hàm nào đĩ ≥ 2 l n 16 Call of nonfunction Câu l nh g i hàm c a ta là sai. Tên hàm mà ta g i cĩ th là m t tên ki u/h ng/bi n, 17 Cannot call 'main' from within the Khơng th g i th c hi n hàm main() trong ch ươ ng program trình, vì đây là m t hàm đc bi t, t đ ng th c hi n 1 l n trong m i l n ch y CT. 18 Cannot cast from 'type1' to 'type2' Khơng th ép ki u d li u t ki u 1 sang ki u 2 19 Cannot convert 'type1' to 'type2' Khơng th chuy n đ i ki u d li u t ki u 1 sang ki u 2 20 Cannot initialize 'type1' with 'type2' Khơng th kh i gán d li u thu c ki u 2 cho bi n thu c ki u 1 21 Cannot modify a const object Khơng th thay đ i giá tr c a m t h ng s . X y ra khi ta th c hi n phép gán giá tr m i cho 1 h ng 22 Case outside of switch Lnh CASE n m bên ngồi SWITCH Ng ưi biên so n: Nguy n Tr n Thi V ăn Trang 1
  2. Tài li ệu h ọc t ập Mơn : Lập trình C 23 Case statement missing : Lnh CASE thi u d u 2 ch m (:) 24 Character constant must be one or two Kích th ưc c a h ng kí t khơng đúng. X y ra khi characters long ta ghi m t chu i dài các kí t vào gi a c p d u nháy đơ n ‘’ 25 Compound statement missing } Thi u d u } k t thúc kh i l nh 26 Constant expression required V trí này l ra ph i là m t bi u th c h ng, cĩ giá tr khơng đ i. 27 Could not find a match for argument(s) Khơng tìm thy đ i s thích h p. 28 Could not find file 'filename' Khơng tìm th y t p tin 29 Declaration is not allowed here V trí khai báo sai. Khơng đưc khai báo t i đây. 30 Declaration missing ; Khai báo thi u d u ch m ph y (;) 31 Declaration syntax error Khai báo khơng đúng cú pháp 32 Declaration terminated incorrectly Khai báo sai (g n gi ng l i trên) 33 Declaration was expected Thi u khai báo 34 Default outside of switch Lnh m c đ nh DEFAULT n m bên ngồi kh i lnh SWITCH 35 Default value missing Thi u giá tr m c đ nh 36 Division by zero Chia cho 0, l i này x y ra khi mu s c a m t ph n s cĩ giá tr b ng 0. 37 do statement must have while Lnh do ph i đi v i while . X y ra khi thi u while trong câu l nh do 38 do-while statement missing ( 39 do-while statement missing ) Thi u trong câu l nh do while 40 do-while statement missing ; 41 Duplicate case Lnh CASE b trùng, x y ra khi ta vi t 2 dịng case khác nhau nh ưng cùng m t giá tr nh ư nhau. 42 Expression expected V trí này ph i là m t bi u th c 43 Expression syntax Sai cú pháp khi xây d ng bi u th c 44 Extra parameter in call to function Gi th c hi n hàm nh ưng l i truy n d ư tham s 45 File name too long Tên t p tin quá dài. 46 For statement missing ( 47 For statement missing ) Thi u trong câu l nh for 48 For statement missing ; 49 'function' cannot return a value Hàm cĩ tên ‘function’ khơng th tr v m t giá tr , thơng th ưng vì ta khai báo nĩ là hàm ki u void 50 'function' must be declared with no Hàm cĩ tên ‘function’ ph i đưc khai báo khơng parameters cĩ tham s , x y ra khi ph n khai báo (prototype) và ph n thân hàm khơng gi ng nhau v s tham s 51 'function' must be declared with one Tươ ng t nh ư l i trên parameter Ng ưi biên so n: Nguy n Tr n Thi V ăn Trang 2
  3. Tài li ệu h ọc t ập Mơn : Lập trình C 52 'function' must be declared with two parameters 53 Function 'function' should have a Hàm cĩ tên ‘function’ c n ph i đưc khai báo. Li prototype th ưng g p khi trình biên d ch C khơng hi u 1 tên hàm nào đĩ mà ta s d ng, cĩ th do thi u #include t p tin tiêu đ t ươ ng ng, ho c gõ sai tên. 54 Function call missing ) Gi th c hi n hàm thi u ) 55 Function calls not supported Khơng th g i hàm d ng này/ki u này 56 Function should return a value Hàm c n ph i tr v 1 giá tr , x y ra khi ta khai báo hàm cĩ ki u tr v nh ưng l i thi u câu l nh return 57 Goto statement missing label Dùng l nh goto mà khơng cĩ nhãn 58 'identifier' is not a member of struct Tên khơng ph i là thành ph n c a c u trúc, x y ra khi ta vi t tên thành ph n sai 59 'identifier' is not a parameter Tên khơng ph i là m t tham s 60 Identifier expected Thi u tên bi n. 61 If statement missing ( Câu l nh if thi u m hay đĩng ngo c 62 If statement missing ) 63 Illegal character 'character' (0x'value') Kí t khơng h p l , th ưng x y ra khi ta bi u di n các h ng s h hexa, nh ưng l i s d ng các ch cái khác A F hay a f 64 Illegal octal digit Khơng ph i là m t s h 8 h p l 65 Illegal pointer subtraction Th c hi n phép tr khơng h p l trên con tr 66 Illegal use of floating point Dùng d u ch m đ ng khơng đúng, ví d s d ng phép tốn modulo % trên s th c ch ng h n. 67 Illegal use of pointer Dùng con tr khơng h p l 68 Implicit conversion of 'type1' to 'type2' Khơng cho phép ng m chuy n t ki u 1 sang ki u not allowed 2 69 Improper use of typedef 'identifier' Ki u d li u đưc s d ng khơng đúng. 70 Incompatible type conversion Khơng th chuy n đ i ki u d li u 71 Incorrect number format Khơng ph i là d li u d ng s , th ưng x y ra khi ta gõ các kí t khác 0 9 trong m t d li u ki u s 72 Incorrect use of default Dùng DEFAULT khơng đúng 73 Invalid use of dot Dùng d u ch m (.) khơng đúng v trí 74 Lvalue required V trái c a phép gán ph i là m t tên bi n. L i x y ra khi ta gán giá tr cho m t h ng. 75 main must have a return type of int Hàm main ph i tr v 1 giá tr ki u int 76 Misplaced break Dùng break ngồi vịng l p ho c ngồi SWITCH 77 Misplaced continue Dùng continue ngồi vịng l p 78 Misplaced decimal point Du ch m th p phân sai v trí 79 Misplaced else Dùng else sai v trí (thi u if, ) Ng ưi biên so n: Nguy n Tr n Thi V ăn Trang 3
  4. Tài li ệu h ọc t ập Mơn : Lập trình C 80 'new' and 'delete' not supported Khơng đưc phép dùng new và delete trong c p phát vùng nh đ ng. 81 No : following the ? Tốn t điu ki n thi u d u 2 ch m (:) 82 No file name ending Khơng cĩ ph n k t thúc tên t p tin 83 No file names given Khơng cĩ tên t p tin 84 No type information Khơng tìm th y thơng tin gì v ki u d li u 85 Not an allowed type Ki u d li u này khơng cho phép dùng đây 86 Numeric constant too large Hng s cĩ giá tr quá l n 87 Pointer to structure required on left side Xy ra khi dùng con tr c u trúc khơng đúng cách of -> or ->* đ truy xu t các thành ph n c a c u trúc 88 sizeof may not be applied to a bit field Tốn t sizeof() khơng dùng cho ki u bit field 89 sizeof may not be applied to a function Tốn t sizeof() khơng dùng cho hàm 90 Size of 'identifier' is unknown or zero Kích th ưc c a b ng 0 ho c khơng xác đ nh 91 Size of the type is unknown or zero Kích th ưc c a ki u d li u b ng 0 ho c khơng xác đnh 92 Statement missing ; Thi u d u ch m ph y (;), thơng th ưng do thi u du ; tai dịng trên ca dịng báo l i 93 Structure required on left side of . or .* Xy ra khi truy xu t các thành ph n c a c u trúc khơng đúng cách. 94 Structure size too large Kích th ưc c a c u trúc quá l n, v ưt quá gi i hn 64K ch ng h n. 95 Switch statement missing ( Câu l nh switch thi u ngo c. Ph n giá tr c a l nh 96 Switch statement missing ) switch ph i đưc đ t trong c p d u ngo c 97 The value for 'identifier' is not within the Giá tr ca bi n khơng n m trong ph m vi c a range of an int mt bi n ki u nguyên (int) 98 Too few parameters in call to function Gi th c hi n hàm nh ưng l i truy n khơng đ s lưng tham s . 99 Too many decimal points Bi u di n s th c nh ưng dùng nhi u hơn 1 d u ch m th p phân 100 Too many default cases Trong câu lnh switch cĩ nhi u hơn 1 l nh default 101 Too many errors or warning messages Cĩ quá nhi u li ho c cnh báo trong ch ươ ng trình. X y ra khi ch ươ ng trình cĩ nhi u hơn 25 l i 102 Too many types in declaration Khai báo quá nhi u ki u d li u mi (ít gp) 103 Too much global data defined in file Cĩ quá nhi u bi n tồn cc trong ch ươ ng trình, gây tràn vùng nh dành riêng cho các bi n này. 104 Type mismatch in default argument value Giá tr mc đnh ca tham s truy n cho CT con b sai ki u. 105 Type mismatch in default value for Giá tr mc đnh ca tham s b sai ki u. parameter 'parameter' 106 Type mismatch in parameter 'number' in Truy n tham s cho ch ươ ng trình con ‘function’ call to 'function' b sai ki u tham s ‘number’ Ng ưi biên so n: Nguy n Tr n Thi V ăn Trang 4
  5. Tài li ệu h ọc t ập Mơn : Lập trình C 107 Type mismatch in parameter 'parameter' Tham s b sai ki u 108 Type mismatch in parameter 'parameter' Gn gi ng l i 106 in call to 'function' 109 Type name expected Thi u tên ki u ti v trí báo li 110 Type 'typename' may not be defined here Ki u d li u khơng th đnh ngh ĩa v trí này đưc 111 Unable to create turboc.$ln Khơng th to đưc tp tin turboc.1$n Th ưng xy ra khi ta ch y TurboC trên đĩa mm hay đĩa CD. 112 Unable to execute command 'command' Khơng th th c hi n lnh 113 Unable to open include file 'filename' Khơng th m đưc tp tin tiêu đ th ưng xy ra do ta vi t tên t p tin tiêu đ sai, ho c tp tin này khơng t n ti trên đĩa. 114 Undefined label 'identifier' Nhãn ch ưa đưc khai báo 115 Undefined structure 'structure' Cu trúc ch ưa đưc khai báo 116 Undefined symbol 'identifier' Ký hi u ch ưa đưc khai báo, th ưng xy ra trong tr ưng hp ta s dng bi n mà ch ưa khai báo. 117 Unexpected } Dư du đĩng ngo c } 118 Unexpected end of file in comment started on 'line number' Th ưng xy ra trong tr ưng hp thi u du đĩng 119 Unexpected end of file in conditional ngo c } ca hàm main(). started on 'line number' 120 Unknown language, must be C or C++ Mt cú pháp l, khơng ph i là cú pháp ca C hay C++ 121 User break Ch ươ ng trình b ng t do ng ưi s dng 122 Value of type void is not allowed Khơng đưc phép gán d li u cho bi n ki u void 123 Variable 'identifier' is initialized more Bi n đưc kh i to nhi u ln. than once 124 void & is not a valid type Khơng ch p nh n tham chi u đn bi n ki u void 125 While statement missing ( Câu l nh while thi u ngo c. Ph n điu ki n c a 126 While statement missing ) lnh while ph i đưc đ t trong d u ngo c. Ng ưi biên so n: Nguy n Tr n Thi V ăn Trang 5