*** ERROR L103: EXTERNAL ATTRIBUT DO NOT MATCH PUBLIC
时间: 2024-01-17 16:19:33 浏览: 86
*** ERROR L103: EXTERNAL ATTRIBUT DO NOT MATCH PUBLIC 是C51编译器的一个错误,表示外部属性与公共属性不匹配。这个错误通常发生在多个源文件中定义了相同的全局变量或函数,并且它们的属性不一致。
解决这个错误的方法是确保所有源文件中对于相同的全局变量或函数的定义具有相同的属性。具体来说,你需要检查以下几个方面:
1. 检查所有源文件中对于相同的全局变量或函数的定义,确保它们的类型、储类别和修饰符等属性完全一致。
2. 如果你在一个源文件中使用了extern关键字来声明一个全局变量或函数,那么在其他源文件中定义该变量或函数时,也要使用extern关键字来保持一致。
3. 如果你在一个源文件中使用了static关键字来定义一个全局变量或函数,那么在其他源文件中引用该变量或函数时,也要使用static关键字来保持一致。
4. 如果你在一个源文件中使用了const关键字来定义一个全局变量,那么在其他源文件中引用该变量时,也要使用const关键字来保持一致。
通过检查并确保所有源文件中对于相同的全局变量或函数的定义具有相同的属性,你应该能够解决*** ERROR L103: EXTERNAL ATTRIBUT DO NOT MATCH PUBLIC错误。
相关问题
keil5编译器报错*** ERROR L103: EXTERNAL ATTRIBUT DO NOT MATCH PUBLIC
这个错误是由Keil5编译器报告的,它表示外部属性与公共属性不匹配。这通常发生在使用extern关键字声明变量时,变量的属性与其在其他地方的定义不匹配。
要解决这个错误,你可以检查以下几个方面:
1. 确保在所有使用该变量的地方都使用了相同的extern声明。
2. 检查变量的定义和声明是否一致,包括数据类型、名称和属性。
3. 确保变量的定义和声明在同一个作用域内。
如果以上步骤都没有解决问题,你可以尝试重新编译代码或者查看Keil5编译器的文档,了解更多关于该错误的详细信息和解决方法。
*** ERROR L103: EXTERNAL ATTRIBUT DO NOT MATCH PUBLI如何解决
这个错误信息通常是由于在使用FORTRAN子程序时,其输入参数与调用该子程序的主程序中的参数不匹配所导致的。主程序中传递给子程序的参数的数据类型、数量、顺序等与子程序声明的参数不匹配,就会导致该错误。
要解决这个问题,您需要检查主程序中调用子程序的参数是否与子程序声明时的参数匹配。您需要检查以下几个方面:
1. 检查子程序声明时的参数数量、顺序和数据类型是否正确。
2. 检查主程序中调用子程序时传递的参数数量、顺序和数据类型是否正确。
3. 检查参数传递时是否有意外的类型转换,例如将实数传递给整数参数。
4. 如果子程序是从其他文件中调用的,确保在主程序中包含了正确的子程序声明和链接库。
一旦您找到了参数不匹配的问题,就需要修改代码以确保参数匹配。如果您仍然无法解决问题,可以尝试检查编译器的错误输出或在编译时打开调试模式以获取更多信息。