错误:'what'的冲突类型

w00*_*00t 3 c embedded gcc mips

我正在研究一种嵌入式系统,它提供了某些类型的接口.

问题是通过包含来自c标准库的某些标题我得到了 error: conflicting types

我使用gettimeofday和我只是使用struct timeval,但是使用它sys/time.h也会time_t干扰系统定义的拖拽.

我无法触及这些代码,我需要它们.

有没有办法解决这些问题?(我应该能够使用系统的声明类型和c头中声明的一些函数,包含已经由系统完成的一些声明的头文件.)

zwo*_*wol 5

您可以使用宏重命名其中一个time_ttypedef而不修改任何标头:

#define time_t LIBC_time_t
#include <sys/time.h>
#undef time_t

#include <header_which_defines_the_time_t_you_want.h>
Run Code Online (Sandbox Code Playgroud)

这不能保证工作,但它确实在很多时候都有效.