*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS SYMBOL: _delay_ms MODULE: .\Objects\demo_gpio.obj (DEMO_GPIO) DEFINED: .\Objects\system.obj (SYSTEM)这段报错什么意思
时间: 2024-04-27 08:21:46 浏览: 153
这段报错是指在程序中,_delay_ms这个函数被定义了多次,并且这些定义都是公共的(public)。其中一个定义在demo_gpio.obj文件中,另一个定义在system.obj文件中。这种情况是不允许的,因为程序不知道要使用哪个定义。为了解决这个问题,你需要检查代码,确保每个函数都只被定义了一次,并且在需要使用它的地方进行声明。你还可以考虑使用头文件来管理函数的声明和定义,以避免这种问题的发生。
相关问题
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS SYMBOL: _DELAY_MS MODULE: LCD1602.obj (LCD1602)
这个错误通常表示在代码中出现了多个相同名称的公共定义。在您的情况下,出现了多个名为_DELAY_MS的公共定义,这可能是由于重复包含头文件或重复定义变量或函数引起的。
要解决此问题,您可以检查以下几点:
1. 头文件重复包含:确保在需要使用_DELAY_MS的源文件中,只包含了一次相关的头文件。避免在其他头文件中重复包含。
2. 变量或函数重复定义:确保在代码中只有一个_DELAY_MS的变量或函数定义。如果多个文件中都需要使用_DELAY_MS,可以将其定义为静态变量或函数,或者将其放在单独的源文件中,并在其他文件中使用extern关键字声明。
3. 命名冲突:检查您的代码中是否有其他与_DELAY_MS同名的变量、函数或宏定义。如果有,请修改其中一个的名称以避免冲突。
通过检查和修复上述问题,您应该能够解决MULTIPLE PUBLIC DEFINITIONS错误。如果问题仍然存在,请提供更多相关的代码和错误信息,以便我可以更好地帮助您解决问题。
*** error l104: multiple public definitions symbol: _delay module: .\objects
这个错误是因为在你的代码中存在多个公共定义的符号"_delay"。这可能是因为你在多个地方定义了同一个变量或函数。要解决这个错误,你需要找到重复定义的地方并进行修复。你可以尝试以下几种方法:
1. 检查你的代码并确保只有一个地方定义了"_delay"。如果有多个定义,请删除其中一个。
2. 如果你的代码中有多个文件,确保在不同的文件中没有重复定义"_delay"。
3. 确保你的定义和声明一致。即在变量或函数的声明和定义中使用相同的名称和类型。
4. 如果你在头文件中定义了变量或函数,请确保在多个源文件中包含头文件时使用了头文件保护(例如,使用#ifndef和#endif)。
通过这些方法,你应该能够解决"_delay"的多次定义错误。如果问题仍然存在,请提供更多的代码和错误信息,以便我可以帮助你更好地解决问题。
阅读全文