keilc51错误及其警告大全.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
??? ???? 本章列出了编程中可能遇到的致命错误 语法错误 和警告信息 每节包括一个信息 的主要说明 和消除错误或警告条件可采取的措施 致命错误 致命错误立即终止编译 这些错误通常是命令行指定的无效选项的结果 当编译器不 能访问一个特定的源包含文件时也产生致命错误 致命错误信息采用下面的格式 C51 FATAL-ERROR – ACTION current action LINE: line in which the error is detected ERROR: corresponding error message C51 TERMIANTED. C51 FATAL-ERROR – ACTION current action FILE: file in which the error is detected ERROR: corresponding error message C51 TERMIANTED. 下面说明Action和Error中可能的内容 Actions ALLOCATING MEMORY 编译器不能分配足够的存储区来编译指定的源文件 CREATING LIST-FILE / OBJECT-FILE / WORKFILE 编译器不能建立列表文件 OBJ文件 或工作文件 这个错误的出现可能是磁盘 满或写保护 或文件已存在和只读 GENERATING INTERMEDIATE CODE 源文件包含的一个函数太大 不能被编译器编译成虚拟代码 尝试把函数分小或 重新编译 OPENING INPUT-FILE 编译器不能发现或打开所选的源或包含文件 PARSING INVOKE-/#PRAGMA-LINE 当在命令行检测到参数计算 或在一个#pragma中检测到参数计算 就产生这样 的错误 PARSING SOURCE-FILE / ANALYZING DECLARATIONS 源文件包含太多的外部参考 减少源文件访问的外部变量和函数的数目 WRITING TO FILE 当写入列表文件 OBJ文件 或工作文件时遇到的错误 Errors ‘(‘ AFTER CONTROL EXPECTED 一些控制参数需要用括号包含一个参数 当没有左括号时显示本信息 ‘)’ AFTER PARAMETER EXPECTED 本信息表示包含没有参数的右括号 BAD DIGIT IN NUMBER 一个控制参数的数字参数包含无效字符 只能是十进制数 CAN’T CREATE FILE 在FILE行定义的文件名不能建立 CAN’T HAVE GERERAL CONTROL IN INVOCATION LINE 一般控制 例如 EJECT 不能包含在命令行 把这些控制用#pragma声明放在 源文件中 FILE DOES NOT EXIST 没有发现定义在FILE行的文件 FILE WRITE-ERROR 因为磁盘空间不够 写到列表 预打印 工作 或目标文件时出错 IDENTIFIER EXPECTED 当DEFINE控制没有参数时产生本信息 DEFINE要求一个参数作为标识符 这 和C语言的规则相同 MEMORY SPACE EXHAUSTED 编译器不能分配足够的存储区来编译指定的源文件 如果始终出现这个信息 应 该把源文件分成两个或多个小文件再重新编译 MORE THAN 100 ERRORS IN SOURCE-FILE 在编译时检测到的错误超过100个 这使编译器终止 MORE THAN 256 SEGMENTS/EXTERNALS 在一个源文件中的参考超过256个 单个的源文件不能有超过256个函数或外部参 考 这是INTEL目标模块格式 OMF-51 的历史的限制 包含标量和/或bit声明 的函数在OBJ文件中生成两个 有时候三个段定义 NON-NULL ARGUMENT EXPECTED 所选的控制参数需要用括号包含一个参数 例如 一个文件名或一个数字 OUT OF RANGE NUMBER 一个控制参数的数字参数超出范围 例如 OPTIMIZE控制只允许数字0到6 值 7就将产生本错误信息 PARSE STACK OVERFLOW 解析堆栈溢出 如果源程序包含很复杂的表达式或如果块的嵌套深度超过31级 就会出现这个错误 PREPROCESSOR LINE TOO LONG 32K 一个中间扩展长度超过32K字符 PREPROCESSOR MACROS TOO NESTED 在宏扩展期间 预处理器所用的堆栈太大 这个信息通常表示一个递归的宏定义 但也可表示一个宏嵌套太多 RESPECIFIED OR CONFLICTING CONTROL 一个命令行参数指定了两次 或命令行参数冲突 SOURCE MUST COME FR

文档评论(0)

152****7770 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档