我使用SDCC和编程旧的8051得到了这个编译错误。 我正在尝试使1wire搜索命令工作。我得到了一个OneWire库,我开始修改我的硬件/软件,现在我遇到了这个错误:
C:\sdcc\code>sdcc test3.c
test3.c:164: error 98: conflict with previous definition of 'OW_search' for attribute 'type'
from type 'int function ( struct OW_info generic* fixed, unsigned-char fixed) fixed'
to type 'int function ( struct OW_info generic* fixed, unsigned-char fixed) fixed'
出现错误的行如下。
183:...
184:int OW_search(struct OW_info *info)
185:{
186:unsigned char *buffer;
187:int id_bit_number;
188 ...
以防万一,OW_info的声明
struct OW_info
{
unsigned char family;
unsigned char serialNum[6];
unsigned char crc;
};
我正在对上面的函数进行原型设计
int OW_search(struct OW_info *info);
我找不到正确的原因导致编译错误。我希望有一些提示,为什么它会到那里。感谢。
的链接答案 0 :(得分:1)
我得到了错误,因为我在对我的函数进行原型设计后声明了结构。 感谢@TripeHound,现在知道在对函数进行原型设计之前必须声明结构,经过进一步的研究后,似乎没有其他方法。