|
|
關(guān)于keil軟件的一編譯錯(cuò)誤提示,大家可以收藏備用,評(píng)論下面有鏈接
keil 編譯錯(cuò)誤提示 -
C51編譯器識(shí)別錯(cuò)類型有三種
1、致命錯(cuò)誤:偽指令控制行有錯(cuò),訪問(wèn)不存在的原文件或頭文件等。
2、語(yǔ)法及語(yǔ)義錯(cuò)誤:語(yǔ)法和語(yǔ)義錯(cuò)誤都發(fā)生在原文件中。有這類錯(cuò)誤時(shí),給出 提示但不產(chǎn)生目標(biāo)文件,錯(cuò)誤超過(guò)一定數(shù)量才終止編譯。
3、警告:警告出現(xiàn)并不影響目標(biāo)文件的產(chǎn)生,但執(zhí)行時(shí)有可能發(fā)生問(wèn)題。程序 員應(yīng)斟酌處理。 D.1 致命錯(cuò)誤 C_51 FATAL_ERROR ACTION: LINE:
ERROR: terminated 或C_51 FATAL ERROR ACTION: FILE:
ERROR: terminated C_51 TERMINATED C_51 (1) ACTION 的有關(guān)信息
*PARSING INVOKE-/#PRAGMA_LINE
在對(duì)#pragma 指明的控制行作此法分析時(shí)出錯(cuò)。 *ALLOCATING MEMORY
系統(tǒng)分配存儲(chǔ)空間時(shí)出錯(cuò)。編譯較大程序需要512k空間。 *OPENING INPUT_FILE
打開(kāi)文件時(shí),未找到或打不開(kāi)源文件/頭文件。 *CREATE LIST_FILE/OBJECT_FILE/WORK_FILE
不能創(chuàng)建上述文件。可能磁盤滿或文件已存在而且寫(xiě)保護(hù)。 *PARSING SOURCE_FILE/ANALYZING DECLARATIONS 分析源程序時(shí)發(fā)現(xiàn)外部引用名太多。 *GENERATING INTERMEDIATE CODE
源代碼被翻譯成內(nèi)部偽代碼,錯(cuò)誤可能來(lái)源于函數(shù)太大而超過(guò)內(nèi)部極限。 *WRITING TO FILE
在向文件(work,list,prelist或object file)寫(xiě)時(shí)發(fā)生錯(cuò)誤。 (2)ERROR的有關(guān)信息 *MEMORY SPACE EXHAUSTED
所有可用系統(tǒng)空間耗盡。至少需要512k 字節(jié)空間。沒(méi)有足夠空間,用戶必須檢查常駐內(nèi)存 的驅(qū)動(dòng)程序是否太多。 *FILE DOES NOT EXIST
FILE 行定的文本文件名未發(fā)現(xiàn)。 *CAN’T CREAT FILE
FILE 行定義的文件不能被創(chuàng)建。 *SOURCE MUST COME FROMA DISK_FILE
源文件和頭文件必須存在于硬盤或軟盤上。控制臺(tái)、CON、CI 或類似設(shè)備不允許作為輸入 文件。
*MORE THAN 256 SEGMENTS/PUBLICS/EXTERNALS
受OMF_51的歷史限制,一個(gè)源程序不能超過(guò)256個(gè)各種函數(shù)的類型段,256個(gè)全局變量,
256 個(gè)公共定義或外部引用名。不使用為變量可以減少使用的段數(shù)。使用static 存儲(chǔ)類型說(shuō)
明符可減少全局變量的使用數(shù)目。合理調(diào)整定義性說(shuō)明的位置可減少外部引用名的使用數(shù) 目。
*FILEWRITE ERROR
當(dāng)向list、prelist、work或object文件中寫(xiě)內(nèi)容時(shí),由于空間不夠而發(fā)生錯(cuò)誤。 *NON_NULLARGUMENT EXPECTED
所選的控制參數(shù)需要一個(gè)括號(hào)內(nèi)的變量,如一個(gè)文件夾或一個(gè)數(shù)。 *“(”AFTER CONTROL EXPECTED 變量的左括號(hào)丟失。
*“)”AFTER PARAMETER EXPECTED 變量的右括號(hào)丟失。
*RESPECIFIED OR CONFLICTING CONTROL
所選的控制參數(shù)與前面發(fā)生沖突或重復(fù),例如CODE和NOCOND *BAD DECIMAL NUMBER
控制參數(shù)的數(shù)字含有非法數(shù),需要使用十進(jìn)制數(shù)。 *OUT OF RANGE DECIMAL NUMBER
控制參數(shù)的數(shù)字越界,例如OPTIMIZE 的參量為0-5。 *IDENTIFIER EXPECTED
控制參數(shù)DEFINE 需要一個(gè)標(biāo)識(shí)符做參量,與C語(yǔ)言的規(guī)則相同。 *PARSE STACK OVERFLOW
分析棧溢出。可能是源程序包含特別復(fù)雜的表達(dá)式,或功能塊嵌套數(shù)超過(guò)15。 *PREPOCESSOR: MACRO TO NESTED
宏擴(kuò)展期間,預(yù)處理器的棧耗用太大。表明宏嵌套太多,或有遞歸宏定義。 *PREPOCESSOR: LINE TOO LONG(510) 宏擴(kuò)展后行超過(guò)510個(gè)字符。
*CAN’T HAVE GENERAL CONTROL IN INVOCATION LINE
一般控制(如EJECT)不能是命令行的一部分,應(yīng)將它們放入源文件“pragma”預(yù)處理行 中。
|
|