我目前正在尝试修改用C编写的库(ASN.1编译器),因此我可以在C ++ Builder(XE6)中编译和使用它。 这样做,我遇到了错误"' memchr'"的冲突类型(在cstring中)。
经过一番研究,似乎这个问题来自C和C ++代码混合的事实。但是,我不能使用我读过的文章中提出的解决方案,因为它们与GCC编译器相关,当我使用C ++ Builder及其编译器时。
解决此错误的解决方案是什么?
谢谢
答案 0 :(得分:2)
您可能会混合使用cstring
和string.h
。不要这样做。
前者声明:
void * memchr(void *, int, size_t);
后者
void * memchr(const void *, int, size_t);
那些不是同一类型。